【问题标题】:Backbonejs - prevent router from listening to hash changesBackbonejs - 防止路由器监听哈希变化
【发布时间】:2013-03-12 14:22:16
【问题描述】:

好的,这很奇怪,但我希望能得到一些想法。 有没有办法阻止 Backbone.Router 监听哈希变化?

我想使用路由器的声明性功能 - 能够声明路由和处理程序的映射 - 但我不希望路由器在哈希更改时触发处理程序,而是当我专门用路由调用它时表达。

我发现调用路由器的唯一方法是使用:

router.navigate(route, {trigger:true});

但这实际上改变了 URL,这是我不想要的。

或者,Backbone 或 Marionette 中是否有其他对象可以为我提供这种声明性功能?

【问题讨论】:

  • 您应该在原始问题中看到答案。你真的应该尽量不要提出重复的问题。
  • 嗨@sQVe。在重新阅读这两个问题后,我可以明白为什么看起来像重复了。然而,这不是我的本意。它们都源于我正在研究的同一个问题,而且我从不同的角度看待同一个问题。你向我指出他们问同样的问题这一事实让我明白我实际上有一个问题要解决,而不是两个。非常感谢。

标签: javascript backbone.js marionette


【解决方案1】:

尝试使用

router.navigate(route, { trigger:false});

我在我的应用程序中进行了测试,一旦我做出此更改,我通过此调用发送的路由将不再有效。如果我在 url 中输入路线并点击条目,我仍然可以在应用程序中导航。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-08-21
    • 1970-01-01
    • 2017-06-14
    • 2021-07-07
    • 1970-01-01
    • 2016-09-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多