Javascript 型号';更改';,但是它';不是

Javascript 型号';更改';,但是它';不是,javascript,backbone.js,coffeescript,Javascript,Backbone.js,Coffeescript,我有一个看法: class FancyView extends Backbone.View template: #fancytemplate initialize: () -> @add() @model.bind('change', @update) add: () -> $(@el).html($(@template).tmpl(@model.toJSON())).prependTo('#fancy')

我有一个看法:

class FancyView extends Backbone.View
    template: #fancytemplate

    initialize: () ->
        @add()
        @model.bind('change', @update)

    add: () ->
        $(@el).html($(@template).tmpl(@model.toJSON())).prependTo('#fancy')

    update: () ->
        $(@el).html($(@template).tmpl(@model.toJSON()))
当日志记录中出现更改时,更新中的日志记录
@model.changedAttributes()
显示
数据下的更改
,但日志记录
@model
仍显示旧数据,因此更新时没有任何更改


为什么
@model
仍然是旧数据?

如果能看到更多。。。模板是什么样子的?您使用的模板引擎是什么

我可以说,我看到了一个问题的蝙蝠。。。对于
更新
功能,您需要使用“胖箭头”(
=>
)而不是(
->
)。如果不这样做,
@el
@template
@model
将在触发事件时处于错误的上下文中

update: =>
    $(@el).html($(@template).tmpl(@model.toJSON()))

我不确定在没有看到模型代码的情况下是否可以调试它,也可能没有看到您描述的日志记录的示例输出。抱歉,修复了它,整个“在数据下显示更改”是因为它将它放在了
数据
子模型中!所以这个问题仍然有效吗?纳拉比诺维茨:不,我知道了,谢谢。如果你已经知道了,就发布你问题的答案。对不起!刚刚修复了它,整个“在数据下显示更改”是因为它将其放在数据子模型中!