0

我有一个通过 get 请求加载的 php 页面,其中包含多个参数,例如:index.php?page=6&name=Virginia。加载页面后,我将初始化主干并使用它在页面的一部分上呈现视图。问题是路由器似乎正在获取我的整个 url 并注册它,因此为了触发路由,我必须将以下内容附加到我的链接:. 这有效,但很丑陋。我尝试将 root 参数更改为 Backbone.history.start 但似乎无法使其正常工作。我敢肯定,大多数人不会从带有查询参数的动态页面开始主干,但感谢您提供任何帮助。我尝试了从插件到不同正则表达式的各种解决方案,但无济于事。

4

1 回答 1

0

如果没有 pushState,您根本无法做到这一点。我会做类似的事情:

var router = Backbone.Router.extend({
  routes: {
    '*url': 'defaultRoute'
  },

  defaultRoute: function(url) {
    // just url argument and parse params out
  }
});

实际上,在您的情况下,这将是最简单的。对于参数,您需要一个带有 、 和 方法的类getsetdelete非常简单,您可以找到大量示例。

于 2012-07-20T22:36:25.303 回答