我是骨干0.9.1的新手。 我发现当我更改哈希时,我无法在我的演示中触发哈希更改。 我的网址是http:// [...] / backbone / #help。我想我应该收到一条警告信息“帮助”,但我不是。
$(function() {
var App = {
Controllers:{},
initialize: function(){
new App.Controllers.Routes();
var h = new Backbone.History();
h.start({root: '/backbone/'});
}
};
App.Controllers.Routes = Backbone.Router.extend({
routes: {
"help": "help",
"search/:query": "search",
},
help: function() {
alert("help");
},
search: function(query) {
alert("search");
}
});
App.initialize();
});
是否存在一些误解或误用?
答案 0 :(得分:1)
您无需自己实例化History对象。此外,如果您不使用pushstate,则无需在启动选项中指定root
。
因此,您的initialize方法应如下所示:
initialize: function(){
new App.Controllers.Routes();
Backbone.history.start();
}