Bog*_*dan 6 angular2-routing angular
我正在使用 Angular 2.0 稳定版本,并希望用户在离开页面之前进行确认(他们的更改不会被保存)。
问题是,如果用户希望访问延迟加载的页面,则实现的“CanDeactivate”防护会被调用两次。(使用哈希位置策略)
重现步骤:
应用程序路由.ts
{ path: 'task1', component: Task1Component, canDeactivate: ['candeactivate'] },
Run Code Online (Sandbox Code Playgroud)
应用程序/task-1/task1.module.ts
@NgModule({
imports: [CommonModule],
declarations: [Task1Component],
exports: [Task1Component],
providers: [
{
provide: 'candeactivate',
useValue: () => {
console.log("can deactivate");
return confirm("Test");
}
}
]
})
export class Task1Module {}
Run Code Online (Sandbox Code Playgroud)
请注意,系统会要求您两次确认。我找到了https://github.com/angular/angular/issues/11754,但目前没有任何解决方案。
有什么解决方法吗?
| 归档时间: |
|
| 查看次数: |
3064 次 |
| 最近记录: |