2013-08-16 179 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