2016-08-28 41 views
1

我想創建一個停用後衛,只有在兒童路線之外導航時纔會被激怒。角度2路由器3.0.0-rc.1取消激活警衛隊保護路線組

在RC4( 「@角/路由器」: 「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後,每次更改路徑都會觸發guard。什麼是正確的行爲?有更好的方法來處理這種情況嗎?

+0

如果此問題無法再現,則可以將其刪除。 – miken32

回答

0

我相信你可以添加

canDeactivate: [CanDeactivateGuard] 

你的孩子的路線,而不是定義的父路由裏面。

+0

事情是我想有一個警衛,保護導航兒童路線以外的每個人不守護。 – Olaf

0

這是一個錯誤,它現在按預期工作。