我刚开始学习骨干js。我不了解路由器。我写了一个简单的代码。它应该做的是在控制台中打印“我正在工作”。但它没有用。
$(document).ready(function(){
var AppView = Backbone.View.extend({
el: 'body',
initialize: function(){
console.log('this is working');
}
});
var AppRouter = Backbone.Router.extend({
routes: {
'': function(){
var a = new AppView();
}
}
});
var ar = new AppRouter();
Backbone.history.start();
});
答案 0 :(得分:1)
您几乎肯定会遇到Backbone版本问题。 1.0.0 Change Log entry说:
- 如果您愿意,路由器路由图中的路由现在可以是函数文字,而不是对方法的引用。
你甚至可以在修订历史中找到使这种新行为成为可能的简单one line change。
较旧版本的Backbone需要routes
中的路由方法名称,并且不知道如何处理函数。升级到最新的Backbone(以及Underscore和jQuery),您的代码将起作用。