【发布时间】:2020-12-01 17:58:27
【问题描述】:
我正在使用 Angular、Node.js 和 MySQL 进行全栈开发。我正在尝试在我的 auth-guard.service.ts 文件中添加路由保护,但是当我尝试从 @angular/core 导入 CanActivate 时,它会出错。
Module '"../../../../node_modules/@angular/core/core"' has no exported member 'CanActivate'.
这是我的代码:
admin-layout.routing.ts
import { Routes } from '@angular/router';
import { DashboardComponent } from '../../pages/dashboard/dashboard.component';
import { UserComponent } from '../../pages/user/user.component';
import { TableComponent } from '../../pages/table/table.component';
import { IconsComponent } from '../../pages/icons/icons.component';
export const AdminLayoutRoutes: Routes = [
{ path: 'dashboard', component: DashboardComponent },
{ path: 'user', component: UserComponent },
{ path: 'table', component: TableComponent },
{ path: 'icons', component: IconsComponent }
];
auth-guard.service.ts
import { CanActivate } from '@angular/core'; //gives an error here
export class AuthGuard implements CanActivate
{
....
}
【问题讨论】:
-
没有需要从
../../..导入的Angular模块。你总是想拥有@angular/moduleName。