我正在使用 Hot Towel 模板,我正在尝试了解如何通过 javascript 调用导航到不同的 View 。当我的页面加载时,它看起来像这样:
然后,如果我单击任何其他按钮,然后再次单击应用程序按钮,我将编写一些测试代码以将用户带到 ping 页面。这是在应用程序 View 模型中:
function activate() {
if (initialized) { router.navigateTo("#/ping"); return; }
// more code here (doesn't get hit the second time through)
}
但是发生的是 URL 是正确的 ping URL,并且选择了 ping 按钮,但实际内容仍然显示应用程序:
如果我想在不点击顶部导航栏的情况下导航到另一个页面,应该怎么做?
最佳答案
你的 'router.navigateTo('#/ping') 是正确的。
但是当调用activate方法时,durandal正在做很多繁重的任务,为时已晚
你的命令,如果你想阻止打开一个页面而不是你想去
另一个页面,然后你可以使用'CanActivate'方法如下:
function canActivate() {
if (initialized) { router.navigateTo("#/ping"); return false;
/* return false to prevent opening a page */ }
else return true;
}
您的应用程序的性能也将得到提升
祝你好运。
关于javascript - Durandal 的导航问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18679691/