Angular 2路由器3.0.0-rc.1 .关闭线路保护组



我想创建一个仅在子路由之外导航时触发的禁用保护。

在rc4 ("@angular/router": "3.0.0-beta.1")中,这段代码的工作方式如下:

 path: '',
    component: RootComponent,
    canDeactivate: [CanDeactivateGuard],
    children: [
        {
            path: '',
            component: XComponent,
        },
        {
            path: 'somepath',
            component: YComponent
        }
        ]
}

在这个例子中,从XComponent导航到YComponent并没有触发deactivate guard,但是例如导航到"someNotChildComponent"就触发了。

更新到@angular/route 3.0.0-rc后。每次路径改变都会触发1个守卫。什么是正确的行为?有更好的办法处理这个案子吗?

我相信你可以添加

canDeactivate: [CanDeactivateGuard]

这是一个bug,现在可以正常工作了

最新更新