我目前在Backbone的todos应用示例中遇到问题。你可以在这里找到我的代码: http://jsfiddle.net/chrisg93/96tgP/3/
$ ->
Todo = Backbone.Model.extend
defaults:
title: "Empty task"
done: false
order: Todos.nextOrder()
TodoList = Backbone.Collection.extend
model: Todo
nextOrder: ->
if not @length then 1 else (@model.last().get "order") + 1
Todos = new TodoList()
当我尝试运行这个极简主义代码时,我收到一条错误消息,说我无法调用未定义的方法“nextOrder”。我已经按照教程进行操作,并且不明白为什么这不起作用。
你可以帮帮我吗?提前谢谢。答案 0 :(得分:1)
在您的模型中,定义Todos
未定义。
我认为你应该让order
成为模型的一种方法,并参考模型所属的集合,如下所示:
Todo = Backbone.Model.extend
defaults:
title: "Empty task"
done: false
order: @collection.nextOrder()