Я создал следующую охрану маршрута:
// #region Imports
/* Angular */
import {Injectable} from '@angular/core';
import {CanActivate} from '@angular/router';
// #endregion Imports
@Injectable()
export class AuthenticationGuard implements CanActivate {
// #region Operations
public canActivate() : boolean {
return true;
}
// #endregion Operations
}
Я использую это следующим образом:
const routes : Routes = [
{
path: '',
redirectTo: 'admin',
pathMatch: 'full'
},
{
path: 'admin',
component: AdminComponent,
canActivate: [AuthenticationGuard]
},
{
path: 'signin',
component: SignInComponent
}
];
export const ApplicationRoutes : ModuleWithProviders = RouterModule.forRoot(routes);
Я импортировал оба в мой единственный модуль:
@NgModule({
imports: [
BrowserModule,
RouterModule,
HttpClientModule,
MatSnackBarModule,
ApplicationRoutes
],
declarations: [
ApplicationComponent,
SignInComponent
],
providers: [
{ provide: AuthenticationGuard }
],
bootstrap: [ApplicationComponent]
})
export class ApplicationModule {}
Однако, когда я запускаю свое приложение, Angular говорит:
Error: Uncaught (in promise): Error: Invalid CanActivate guard
Error: Invalid CanActivate guard
Каким образом мой охранник недействителен?