backbone.js模型不是路由器的构造函数

时间:2012-05-09 13:37:06

标签: backbone.js initialization javascript-namespaces

我有一个使用backbone.js命名空间应用程序演示的问题,我正在尝试显示本地存储的元素的简单列表,当我调用应用程序时控制台检索到此错误

App.model.club is not a constructor

代码部分位于路由器部分;

 initialize: function () {
   console.log('App.router Initialized');
   App.clubCollection = new App.collection.clubs();
   localStorage.clear();
   App.clubCollection.create(new App.model.club({id: 1, name:'Open Baladin', category: 'Pubs'}));
   App.clubCollection.create(new App.model.club({id: 2, name:'Ai marmi', category: 'Ristorante'}));
   App.clubCollection.create(new App.model.club({id: 3, name:'Branca Leone', category: 'Disco'}));

},

上述分区代码中第五行的错误。

这是命名空间文件app.js:

window.App = {
model:  {},
view:   {},
collection: {},
router:  {},
util: {},
data: {},
contentHolder : $('#app').find(":jqmData(role='content')"),
container:$('#app'),

init: function() {
    console.log('window.App Initialized')
    new App.router();
    Backbone.history.start();
}
}

这是模块文件:

App.model.club = App.model.club || {}

App.model.club = Backbone.Model.extend({

defaults: {
    'id' : 1
    'name' : 'Open Baladin',
    'category' : 'Pubs'
},

initialize: function() {
    console.log('App.model.club initialized');
}
});

1 个答案:

答案 0 :(得分:1)

你在'id'之后忘记了逗号:1