Node使用對象組織管理事件名稱
項目中存在著太多的事件。這個技巧展示了如何處理由於寫錯事件名造成的缺陷。已經對你項目中的事件失去控制,並且擔心太容易寫錯一個事件名造成一個難以檢查的bug。
最簡單的方法是用一個對象來存放所有的事件名。這樣在項目中創建了一個統一存放事件的地方。很難跟蹤整個項目凌亂的事件名。管理它的一個方法是將每個事件名稱保持放在一個地方。基礎上使用對象為事件名稱分類
用一個對象存儲事件名稱,可以像這樣羅列清晰;當添加新的事件的時候,類的用戶可以引用對象中的事件的列表而不是用字元串硬編碼事件名稱。雖然EventEmitter是Node的標準庫的一個部分,可以優雅地解決很多問題,但它可以導致很多大型項目的缺陷,人們可能會忘記某一特定事件的名稱的來源。解決這個問題的一種方法是,避免用字元串來作為事件名。相反,一個對象可以被用於引用該事件名稱的字元串的屬性。
如果你正在寫一個可重複使用的、開放源碼的模塊,你應該考慮這部分的公共API,因此很容易讓人們得到事件名稱的列表集。還有其他觀察者模式的實現,避免使用字元串事件名稱、有效類型檢查的事件。在下一個技巧中,我們來看一些可以通過NPM的模塊。雖然EventEmitter在Node項目時提供了很多解決方案,但還有替代方案。
※Node如何創建一個基於EventEmitter的自定義類
※Node的創建和管理模塊
※Node使用流和目錄運行流程的介紹
※移動端用戶中心的待辦事項查看標記頁設計
※PHP的字元串裁剪函數
TAG:行家匯 |
※非營利組織「MoveOn」品牌形象設計
※使用 Calcurse 在 Linux 命令行中組織任務
※黑客組織Cobalt再次使用CobInt惡意軟體攻擊前蘇聯國家
※針對Sofacy組織使用Go語言開發的新Zebrocy變體分析
※澳部門起訴 Facebook 違反隱私政策;APT 組織竊取 D-Link 公司數字證書籤署其惡意軟體
※CSE ZLab 實驗室發布關於 Dark Caracal 間諜組織及其惡意軟體分析報告
※APT組織Carbanak源碼泄露
※公益組織Mindspace品牌形象設計欣賞
※網路間諜組織BlackTech利用被盜證書籤名惡意軟體
※作為「人類命運共同體」的上合組織 SCO:A Tighter Community
※教務處組織Blackboard網路教學管理平台深化應用培訓
※人道主義援助組織也中惡意文檔的招:McAfee 對喪心病狂的Honeybee 行動的調查報告
※Int J Biomater:納米TiO2摻雜殼聚糖支架在骨組織工程的應用
※企業使用Hadoop的重大挑戰:如何在HDFS中組織和使用數據?
※方程式組織DanderSpritz工具測試環境研究
※組織細密頗為隱秘 Gattatico賣淫團伙被搗毀
※Presto 最應該感謝的不是「The Ten」,而是 Nike 這個神秘組織
※最新發現!NOKKI惡意軟體與朝鮮Reaper組織有關
※韓組織起訴蘋果欺詐 直指iPhone降頻事件
※Promise介面是AngularJS組織API的基礎