0
正如標題所要求的那樣。他們是否相反? 另外,如何根據名稱從$rootScope
中刪除事件?
一個簡單的例子也是受歡迎的。
正如標題所要求的那樣。他們是否相反? 另外,如何根據名稱從$rootScope
中刪除事件?
一個簡單的例子也是受歡迎的。
$destroy
既是每個範圍都會偵聽的事件,也是手動觸發該事件的範圍方法。
它主要用於在該範圍被破壞時執行所需的任何操作。範圍被破壞的實例有:
而另一方面$broadcast
只是用來觸發當前級別或子級別的事件scope
。
他們不是相反的。
對於如何從$ rootScope中刪除事件的第二個問題。
比方說,你已經細化事件偵聽器:
$rootScope.$on("myEvent", function() {
//some code
});
每個事件偵聽器返回deregister
功能。每當你要刪除的事件監聽器只要調用deregister
功能
var removeMyEvent = $rootScope.$on("myEvent", function() {
//some code
});
:所以,你可以使用類似。
removeMyEvent();
這應該做的伎倆!
太棒了,謝謝! – Diolor