对于我的一个主干视图,我有以下代码:
class GD.Views.Result extends Backbone.View
template: JST['mobile/templates/result']
tagName: 'tr'
className: 'result'
events:
'click' : 'showDetail'
'click #favourite' : 'addFavourite(Favourite)'
'click #like' : 'addFavourite(Like)'
'click #dislike' : 'addFavourite(Dislike)'
render: ->
$(@el).html(@template(model: @model))
this
addFavourite: (type) ->
event.preventDefault()
attributes =
id: @model.id
type: type
cluster: @model.cluster
@collection.create attributes,
wait: true
success: @updateIcons
error: @handleError
showDetail: ->
...
updateIcons: ->
...
handleError: ->
...
我在控制台中收到此错误:
Uncaught Error: Method "addFavourite(Favourite)" does not exist
我真的不明白为什么 AddFavourite 方法而不是 showDetail 方法会发生这种情况 - 您是否不允许将需要定义参数的方法传递给任何事件?
非常感谢您的任何帮助(!)