什麼是事件流程呢?其實就是一個事件的涌入->建立->註冊->觸發這樣一個生命週期,那麼怎樣操做呢,請聽我一一道來前端
var events =require( 'events' )
複製代碼
var vEvents = new events.EventEmitter()
複製代碼
vEvents.on('onEvent',function (params) {
console.log(params)
})
複製代碼
vEvents.emit('onEvent','你們好,歡迎來到凌雲在線課堂')
複製代碼
能夠獲得結果bash
好,沒有任何的問題,固然這樣只是同步操做,咱們在代碼最後加入一行代碼異步
console.log(1)
複製代碼
由於是同步執行,因此咱們會看到執行順序是從上往下依次執行。ui
那麼怎樣能夠實現異步方法的調用呢?Node官網爲咱們提供了一個異步執行方法setImmediate()spa
//代碼修改以下:
vEvents.on('onEvent',function (params) {
// 同步,從上往下執行
// console.log(`獲得的參數是:${params}`)
// 異步執行該方法
setImmediate(() => {
console.log(params)
})
})
複製代碼
再來看下最終的效果,若是是限制性的console.log(1)就說明咱們的異步執行成功了 code
但願個人分享對你有所幫助,更多資訊請持續關注,我會分享愈來愈多的實戰經驗哦! 或加入大前端知識體系社區一塊兒探索技術:608229520cdn