javascript - Durandal 的导航问题

标签 javascript durandal hottowel

我正在使用 Hot Towel 模板,我正在尝试了解如何通过 javascript 调用导航到不同的 View 。当我的页面加载时,它看起来像这样:

enter image description here

然后,如果我单击任何其他按钮,然后再次单击应用程序按钮,我将编写一些测试代码以将用户带到 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 按钮,但实际内容仍然显示应用程序:

enter image description here

如果我想在不点击顶部导航栏的情况下导航到另一个页面,应该怎么做?

最佳答案

你的 '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/

相关文章:

javascript - 无法将默认值绑定(bind)到 knockoutJS 中的下拉菜单

javascript - 如何使用 knockout 使窗口大小可观察

javascript - 如何测试 jQuery 页面上是否存在具有特定 ID 的元素?

javascript - JQuery 在使用 Durandal 的 compose 时不定位 DOM 元素

javascript - 如何将 AMD 模块从单例转换为实例?

requirejs - Hot Towel : Why is Durandal and Require in the App folder rather than the Script folder?

javascript - Document.getElementById ('Button' ).click();不触发代码隐藏

javascript - 什么时候是在 SPA 中请求类型数据的最佳时间?

javascript - 结合 jQuery UI 和 HotTowel