Backbone.js - 自定义集合事件

jhd*_*vuk 5 javascript backbone.js

我正在尝试为视图绑定实现自定义集合事件.

在我看来,我想做的事情如下:

this.collection.on('available', this.available);
Run Code Online (Sandbox Code Playgroud)

并以某种方式在我的集合中的方法中触发它.

所以说我在我的集​​合中有一个设置特定模型属性(可用)的方法,然后我怎么能触发绑定到这个方法的所有视图?

这是否可行,并且能够将有问题的模型传递给视图以进行更新.

在此先感谢您的任何帮助,非常感谢:)

obm*_*arg 7

向Backbone添加新事件非常简单.您只需要trigger在要触发事件的对象上调用该方法.

例如,假设您在集合的方法中,并拥有一个模型(称为model):

this.trigger('available', model);
Run Code Online (Sandbox Code Playgroud)

绑定到available事件的代码就像您在问题中描述的那样.

编辑:这些天Backbone提供了一种listenTo方法,通常在从视图绑定到集合事件时使用.调用其删除函数时,视图将自动从此事件解除绑定,这将阻止旧视图在删除后继续接收集合事件.从您的角度来看,这可以像这样使用:

this.listenTo(this.collection, 'available', this. available);
Run Code Online (Sandbox Code Playgroud)

  • 哇,backbone.js =很高兴与我合作:)非常感谢 (3认同)