【问题标题】:Can't get Backbone routes without hashes?没有哈希就无法获得主干路由?
【发布时间】:2011-11-27 01:54:24
【问题描述】:

我想要浏览器可以捕获和处理的可收藏网址。如果我只使用 Backbone.history.start(),那么我可以使用哈希 URL,例如 /#accounts

但我想要没有哈希的 URL,例如 /accounts。但我无法使用 Backbone.history.start( { pushState: true } ) (as others have described it) 来实现这一点。我的路线很简单,直接取自the documentation

MyRouter = Backbone.Router.extend({ 路线:{ '/accounts': '帐户', } });

我正在使用 Chrome(也尝试使用 FF),其行为是 /accounts 请求直接发送到服务器。没有被 Backbone 首先拦截。有没有人遇到过这个?如何得到 使用 Backbone 进行无哈希 URL 处理?

提前致谢

【问题讨论】:

  • #用于html中的内部链接,所有没有#的url都会去服务器。您仍然可以添加路由,但所有没有 # 的链接将首先通过服务器

标签: javascript backbone.js backbone-events


【解决方案1】:

您将使用 router.navigate( "/accounts", true ) 使用 js 导航到该 url,而不是通过链接或自己输入 url。要使用链接,您必须将点击事件绑定到它们并阻止默认操作并调用导航到链接 href。

routerRouter 的一个实例

【讨论】:

    猜你喜欢
    • 2014-04-30
    • 1970-01-01
    • 2012-12-28
    • 1970-01-01
    • 1970-01-01
    • 2015-01-19
    • 2023-03-29
    • 1970-01-01
    相关资源
    最近更新 更多