我正在关注这本书,Backbone.js on Rails,并在阅读它的同时创建了基本的 todo 应用程序,但我在尝试初始化应用程序命名空间内的集合时遇到以下 javascript 错误:
错误:TodoApp.Collections.Notes 不是构造函数源文件:localhost:3000/assets/todo_app.js?body=1 行:13
todo_app.js
var TodoApp = {
Models: {},
Collections: {},
Views: {},
Routers: {},
initialize: function(data) {
console.log("INITIALIZE");
var notes = new TodoApp.Collections.Notes(data.notes);
new TodoApp.Routers.Notes({ notes: notes });
Backbone.history.start();
}
};
到目前为止,我已经按照说明创建了一个 Note 模型、Notes 集合和路由器,这就是在 index.html.erb 上调用 initialize 方法的方式:
<%= javascript_tag do %>
TodoApp.initialize({ notes: <%== @notes.to_json %> });
<% end %>
这是我包含所有文件的顺序:
//= require jquery
//= require jquery_ujs
//= require underscore
//= require json2
//= require backbone
//= require backbone-support
//
//= require todo_app
//
//= require_tree ./models
//= require_tree ./collections
//= require_tree ./views
//= require_tree ./routers
//= require_tree ../templates
//= require_tree .
有人能帮忙吗?我在这里错过了什么?谢谢