2016-07-21 82 views
4

我在視圖模型中使用了canDeactivate()。有一種方法可讓用戶從視圖中導航,其中canDeactivate不應執行其檢查並僅返回true(在此情況下,當用戶按下位於另一視圖中的「後退」按鈕時)。看起來canDeactivate沒有任何參數(例如傳遞給router.navigateToRoute的參數)。如果是這樣,我可以指出在調用navigateToRoute時參數arg中的後退按鈕被按下。給canDeactivate這個需要的信息有什麼好方法?如何向Aurelia視圖模型中的CanDeactivate提供信息

+0

你設法找到一個解決這個問題還沒有信息的說法? – Peter

+0

是的。看到我的答案。 –

回答

0

我只是導入了其他視圖模型(在這裏是一個導航欄),其中包含後退按鈕的狀態。

0

我不確定我是否理解您的問題......無論如何,您可以訪問canDeactivate()中的類屬性。例如:

canDeactivate() { 
    //before calling router.navigateToRoute 
    //you can set some properties to indicate the origin, the pressed button or wathever 

    if (this.someProperty === true) { 
     return true; 
    } 

    return false; 
} 
+0

這沒有回答這個問題--OP詢問如何告訴canDeactivate()它在哪裏導航,以便通知您是否可以停用的決定。 – htxryan

1

開始在奧裏利亞路由器1.4.0,canDeactivate傳遞包含你需要做到這一點

相關問題