Node如何創建一個基於EventEmitter的自定義類
這個技術展示了如何創建一個基於EventEmitter的自定義類。在理解這個技術的原理後,你將學習到如何使用EventEmitter,以及如何更好地使用基於它的模塊。
不管是網頁應用,桌面應用還是手機應用的用戶界面都有一個相同的特點:它們都是事件驅動的。事件是解決那些本質是非同步問題的最好的典範:來自人類的輸入。我們將用一個音樂播放器作為例子來展示EventEmitter是如何工作的。它不會真正播放音樂,但是它的基本概念是理解如何使用事件的好方法。
在Node中使用事件的典型例子是從EventEmitter繼承。可以通過一個簡單的原型類實現,只要記得在你的類的構造函數中調用EventEmitter的構造函數,如何從EventEmitter繼承。
使用util.inherits從原型類繼承在Node中是地道的做法
結合一個簡單的構造函數和util.inherits是創建自定義事件驅動類的最簡單也是最常見方法。下一個代碼清單擴展了前一個例子,並且展示了如何通過emit來觸發事件,以及如何通過on來綁定監聽器。
可以配置類的狀態,稍後在EventEmitter的構造器會按需被調用到;這裡的inherits方法將方法從一個原型拷貝到另外一個原型,這是基於EventEmitter創建類的通用模式;emit方法用於觸發事件.
※Node的創建和管理模塊
※Node使用流和目錄運行流程的介紹
※移動端用戶中心的待辦事項查看標記頁設計
※PHP的字元串裁剪函數
※微信小程序的文章列表頁設計
TAG:行家匯 |
※Shader Graph著色器視圖自定義節點API:Code Function Node
※NodePort,LoadBalancer還是Ingress?我該如何選擇
※基於 node.js 的自動路由組件-HttpPostman
※DOM探索之-DOM的nodeType、nodeName、nodeValue
※blogfoster-scripts:一款簡化 Node.js 項目初始化的工具
※node整合webstorm
※Diss掉FileCoin,Hero Node 致力於成為 IPFS 生態的頭號玩家
※川崎病:小兒皮膚黏膜淋巴結綜合征(mucocutaneous lymph node syndrome,MCLS)
※大規模集群下的Hadoop NameNode
※一篇文章教會你 Event loop——瀏覽器和 Node
※node+express+mongoDB寫簡單介面,Vue獲取介面
※nodejs+mongodb 編寫 restful 風格博客 api
※RPM命令的——nodeps 和——force參數解釋
※Google發布Knative,IBM發布雲原生Node.js應用的資源
※瀏覽器與Node的事件循環(Event Loop)有何區別?
※至薄簡約の小鋼炮,Fractal Design Node 202 Slim 裝機作業
※「NodeSpace Powered by Explorium」全國首家智慧供應鏈加速空間落地利程坊
※使用node.js的開發框架express創建一個web應用
※node+pm2+express+mysql+sequelize來搭建網站和寫介面
※Node.js之express框架