我在视图模型中使用canDeactivate()
。有一种方法可以让用户远离canDeactivate
不应该进行检查的视图,只返回true(在这种情况下,当用户按下另一个视图中的Back按钮时)。似乎canDeactivate
不接受任何参数(例如传递给router.navigateToRoute
的参数)。如果是这样,我可以在调用navigateToRoute
时指示在params arg中按下了Back按钮。给canDeactivate
这些所需信息的好方法是什么?
答案 0 :(得分:1)
从aurelia-router 1.4.0开始,canDeactivate传递一个参数,其中包含完成此操作所需的信息
答案 1 :(得分: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;
}
答案 2 :(得分:0)
我只是导入了另一个视图模型(在本例中为导航栏),其中包含“后退”按钮的状态。