2013-06-23 199 views
0

我刚刚开始学习骨干js。我不了解路由器。我写了一个简单的代码。它应该做的是在控制台中打印“我正在工作”。但它不起作用。请帮忙。我的骨干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(); 
}); 

在此先感谢。

回答

1

您几乎肯定会遇到Backbone版本问题。该1.0.0 Change Log entry说:

  • 在路由器的路线图的路线,如今可能是功能的文字,而不是引用的方法,如果你喜欢。

而且你甚至可以找到在修订历史,使得这新的行为可能琐碎one line change

Backbone的旧版本想要的路由方法名称在routes,并不知道如何处理函数。升级到最新的Backbone(以及Underscore和jQuery)并且您的代码将工作。

演示:http://jsfiddle.net/ambiguous/sfeCr/1/