【发布时间】:2013-01-02 02:56:26
【问题描述】:
我正在尝试在 Backbone 0.9.10 中设置路由。我想匹配以下类型的路线:
/england/
/england/birmingham
/france
/france/paris
...
等等。这是我目前在路由器中的内容:
var AppRouter = Backbone.Router.extend({
routes: {
"": "index",
"(/:country)": "index",
"(/:country)(/:city)": "index"
},
index: function(country, city) {
console.log('index', country, city);
}
});
var StateApp = new AppRouter();
Backbone.history.start({ pushState: true });
我有两个问题:
- 'index' 函数目前根本没有触发,无论我访问的 URL =
/、/england还是其他任何内容。 - 我也不清楚可选参数是否会按照我设置的方式工作 - 可以像这样连续设置两个可选参数吗?我还不知道需要支持多少个国家/地区,所以我确实希望
country参数成为一个参数,而不是指定单个国家/地区。
如果可能的话,我宁愿使用正确的 URL 路由而不是正则表达式解析。
【问题讨论】:
标签: javascript backbone.js javascriptmvc backbone-routing