Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Backbone.js 如何在其上侦听嵌套模型更改';什么是收藏品?_Backbone.js - Fatal编程技术网

Backbone.js 如何在其上侦听嵌套模型更改';什么是收藏品?

Backbone.js 如何在其上侦听嵌套模型更改';什么是收藏品?,backbone.js,Backbone.js,我正在使用更改插件来支持对我的模型进行嵌套的模型更改 我在我的视图中尝试了这一点,在那里我得到了一个集合的引用 .... initialize: function(){ this.listenTo(this.collection, 'change', foo); }, foo: function(model){ console.log("Some model changed") } 通过执行FooModel.set({“fooPropertie.BarPropertie”:“fooBar

我正在使用更改插件来支持对我的模型进行嵌套的模型更改

我在我的视图中尝试了这一点,在那里我得到了一个集合的引用

....
initialize: function(){
this.listenTo(this.collection, 'change', foo);
},
foo: function(model){
   console.log("Some model changed")
}
通过执行FooModel.set({“fooPropertie.BarPropertie”:“fooBarValue”}); 我希望触发一个集合更改事件。
我做错什么了吗?

很难定义问题,因为您没有提供定义此集合的方法。但我至少看到一件事需要调整:
this.listenTo(this.collection,'change',this.foo)。在调用
foo
之前添加
this.
。目前在您的上下文中,foo
未定义的

我做了一个JS小提琴,回答了我自己的问题。第一个结论:1。可以侦听主干网集合上的更改。NesteModel模型。2.更改事件在集合上激发得非常好……即使我们正在设置嵌套属性,正如您在下面我的JSFIDLE上看到的那样。