1
我在寫一個自定義元素,我想定期發出一個事件。 發射事件需要一些工作,所以我在想也許我可以懶惰,只有發出事件(並做好工作),如果有一個監聽器。從自定義元素中檢測事件偵聽器(發生事件的延遲)
是否有可能檢測到有人正在聽一個事件(非冒泡)? 並在那種情況下開始發射,直到聽者被移除。
或者,當沒有偵聽器時,javascript運行時是否足夠聰明,不會運行間隔(其中唯一的副作用是創建事件)?
我在寫一個自定義元素,我想定期發出一個事件。 發射事件需要一些工作,所以我在想也許我可以懶惰,只有發出事件(並做好工作),如果有一個監聽器。從自定義元素中檢測事件偵聽器(發生事件的延遲)
是否有可能檢測到有人正在聽一個事件(非冒泡)? 並在那種情況下開始發射,直到聽者被移除。
或者,當沒有偵聽器時,javascript運行時是否足夠聰明,不會運行間隔(其中唯一的副作用是創建事件)?
使用Javascript標準事件,它會出現you can't(除非您override的註冊機制)。
但是通過自定義註冊和回調方法,您可以通過執行Observer pattern來實現此目的。
無論如何,它你很懶,也許發送無用的事件更容易:-)