我有一个 Backbone 集合
jQuery ->
class App.Collections.List extends Backbone.Collection
model: App.Models.ListItem
我正在尝试在页面加载时初始化集合:
var list = new App.Collections.List;
list.reset(<%= @data.to_json.html_safe %>)
这会在主干库中引发 JS 错误。
Uncaught TypeError: undefined is not a function application.js:597
f.extend._prepareModel application.js:597
f.extend.add application.js:591
f.extend.reset application.js:595
(anonymous function)
但是,如果我将代码更改为:
var list = new Backbone.Collections;
list.reset(<%= @data.to_json.html_safe %>)
重置有效,并且集合被填充——认为集合中的对象似乎不知道它们应该是 ListItem 对象。我必须对我的自定义集合的所有重置做一些特别的事情吗?