子ルートの外をナビゲートするときにのみトリガーされる非アクティブ化ガードを作成したいと思います。
rc4 ("@angular/router": "3.0.0-beta.1") では、このコードは次のように機能していました。
path: '',
component: RootComponent,
canDeactivate: [CanDeactivateGuard],
children: [
{
path: '',
component: XComponent,
},
{
path: 'somepath',
component: YComponent
}
]
}
この例では、XComponent から YComponent への移動は非アクティブ ガードをトリガーしませんでしたが、たとえば、"someNotChildComponent" への移動ではトリガーされました。
@angular/route 3.0.0-rc.1 に更新した後、パスが変更されるたびにガードがトリガーされます。正しい行動とは?このケースを処理するためのより良い方法はありますか?