2013-08-16 235 views
1

我试图理解下面的代码:骨干多事件

muConfigView.on("mu:field:changed", function() { 
    updateButtonState(); 
}, this); 

this.trigger('validate:fields'); 

我已经看到了类似的变化事件等,这我理解的例子。

有人能解释一下我的目的是什么"mu:field:changed" & 'validate:fields'是?

+0

我从来没有使用backbone.js,但它们可能只是被抛出的事件的标识符(如DOM中的“click”或“mousedown”)。 – ComFreek

回答

2

骨干有它自己的events built in,但你也可以自己组装,你可以触发和听取。

约定是使用冒号“命名空间”事件(:),以便您可以更好地组织代码,因为一旦开始使用大量事件,它很快就会失去控制。

在第一个示例中,当触发mu:field:changed时,将会调用匿名函数。

在第二个示例中,validate:fields事件正在触发,并将由其他位置的侦听器处理。

+0

明白了,所以这些都是骨干中的自定义事件。谢谢! – RuntimeException

+0

是的,看起来像。你通常使用'change'来监视模型属性变化的事件,比如'firstname:change',所以我假设'mu:field:changed'是自定义的。 – jordelver