0
有没有办法从Durandal.js路由器访问前一条路由/指令?我知道我可以做router.navigateBack()
实际导航,但我想知道我将在导航之前导航回的路线。如何从Durandal路由器访问前一条路由
有没有办法从Durandal.js路由器访问前一条路由/指令?我知道我可以做router.navigateBack()
实际导航,但我想知道我将在导航之前导航回的路线。如何从Durandal路由器访问前一条路由
不是直接恐怕。
router.navigateBack()在router.js定义为
router.navigateBack = function() {
history.navigateBack();
};
而且history.navigateBack()在history.js定义为
history.navigateBack = function() {
history.history.back();
};
和history.history是上述用于窗口定义的别名.history是浏览器的一部分,如果暴露,会导致安全问题。
如果你想拥有这个功能,你必须自己实现它。可能通过拦截router.navigate()
和router.navigateBack()
。
这很有道理。我希望Durandal路由器有一些方法可以在那里做一些魔术,因为它是一个单页的应用程序,但是因为它实际上只是实现了浏览器历史,所以我认为这是不可能的。 – jbgarr
是的,我希望它也是。顺便说一句,如果你认为我的答案是正确的,请将其标为正确。谢谢。 – Maleki