為什麼使用自定義事件?
雖然擴展名的細節是機密的,但請想像汽車製造商(豐田,福特,梅賽德斯)的服務。每個都需要獨特的處理,從而產生單獨的邏輯文件 - 而不是反應組件。 標準的反應工具,例如
,上下文或redux/mobx不直接適用。>
useState
自定義事件提供了解決方案。
自定義事件的工作方式
>
window.addEventListener(type, listener);
type
:派遣事件時執行的功能。 可以添加一個可選的listener
options
:事件名稱(必須匹配
inconst event = new CustomEvent(eventName, { detail }); window.dispatchEvent(event);
eventName
:一個包含傳遞給偵聽器的數據的對象。這使自定義事件高度靈活。 type
addEventListener
detail
在我的Chrome擴展中:useEffect(() => { const handleCustomEvent = (event: CustomEvent) => { console.log(event.detail); }; window.addEventListener(ADD_CUSTOM_EVENT, handleCustomEvent); return () => { window.removeEventListener(ADD_CUSTOM_EVENT, handleCustomEvent); }; }, []);
<code>* `ADD_CUSTOM_EVENT`: A constant (prevents typos). * `handleCustomEvent`: Logs the event's `detail` object (in this simplified example).</code>
以上是瀏覽器中的自定義事件:您沒有的方便工具知道您需要的詳細內容。更多資訊請關注PHP中文網其他相關文章!