在Angular2中,是否可以具有相同的警卫(例如CanActivate或CanDeactivate),它可以应用于多个组件?Angular2:如何在多个组件中使用相同的警卫
这里是MyComponent1
保护:
@Injectable()
export class MyGuard implements CanDeactivate<MyComponent1> {
canDeactivate(component: MyComponent1): Promise<boolean> {
// my code here
}
}
正是我想要的MyComponent2
相同后卫,MyComponent3
等
我如何能实现呢?我需要按部件声明一个新的守卫类,或者我可以重用我的类MyGuard
吗?
我认为@ElJackiste的疑问是关于Guard实现所需的类型。这是一个很好的答案,但也许不是他正在等待的那种答案。 –
具有'CanDeactivate'的事实不会阻止守护类到这个组件'MyComponent1'? –
ElJackiste
没有看到通用参数。所以你需要不同的警卫实例,专门用于警卫所应用的组件。您需要提供不同的实例。我会更新我的答案。 –