欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Node.JS事件的綁定與觸發(fā)示例詳解

 更新時間:2022年11月11日 15:51:07   作者:堅毅的小解同志  
Node中的事件模型就是我們常見的訂閱發(fā)布模式,Nodejs核心API都采用異步事件驅(qū)動,所有可能觸發(fā)事件的對象都是一個繼承自EventEmitter類的子類實例對象,這篇文章主要給大家介紹了關(guān)于Node.JS事件的綁定與觸發(fā)事件的相關(guān)資料,需要的朋友可以參考下

簡介

node.js的事件是使用events模塊,通過實例化它里面的EventEmitter類,來綁定和監(jiān)聽事件。

EventEmitter,它的每個事件都是由

1.事件名,是一個字符串。

2.諾干個參數(shù)。

綁定事件

on()

const eve = require("events");
//導(dǎo)入模塊
var event = new eve.EventEmitter();
//進行實例化聲明
event.on('namea', function () {
    console.log("堅毅的小解同志");
})

查看綁定的事件

const eve = require("events");
//導(dǎo)入模塊
var event = new eve.EventEmitter();
//進行實例化聲明
event.on('namea', function () {
    console.log("堅毅的小解同志");
})
//查看對象屬性 里面有綁定的事件
console.log(event);

里面有事件具體的屬性,和事件的數(shù)量。

addListener()

除了使用on之外,我們還可以使用這個屬性,和on并沒有什么區(qū)別。

const eve = require("events");
//導(dǎo)入模塊
var event = new eve.EventEmitter();
//進行實例化聲明
event.addListener('namea', function (a) {
    console.log(`堅毅的${a}同志`);
})
//觸發(fā)事件冰川入?yún)?shù)
event.emit('namea', '小解');

once()

once 只會綁定一次性的觸發(fā)事件,觸發(fā)一次后就會解除綁定。

const eve = require("events");
//導(dǎo)入模塊
var event = new eve.EventEmitter();
//進行實例化聲明  on  once addListener
event.once('namea', function (a) {
    console.log(`堅毅的${a}同志`);
})
//觸發(fā)事件冰川入?yún)?shù)
event.emit('namea', '小解');
event.emit('namea', '小解');

 我們觸發(fā)兩次,但只會顯示一次的結(jié)果。

監(jiān)聽事件emit()

const eve = require("events");
//導(dǎo)入模塊
var event = new eve.EventEmitter();
//進行實例化聲明
event.on('namea', function () {
    console.log("堅毅的小解同志");
})
//觸發(fā)事件
event.emit('namea');

通過emit來進行觸發(fā)事件。

 傳參

const eve = require("events");
//導(dǎo)入模塊
var event = new eve.EventEmitter();
//進行實例化聲明
event.on('namea', function (a) {
    console.log(`堅毅的${a}同志`);
})
//觸發(fā)事件冰川入?yún)?shù)
event.emit('namea', '小解');

 刪除事件

removeListener()

 刪除指定事件的指定監(jiān)聽器

const eve = require("events");
const { removeListener } = require("process");
//導(dǎo)入模塊
var event = new eve.EventEmitter();
//進行實例化聲明  on  once addListener
let name = function (a) {
    console.log(`堅毅的${a}同志`);
}
let name2 = function (a) {
    console.log(`堅毅的${a}同志`);
}
event.once('namea', name)
event.once('namea', name2)
//觸發(fā)事件冰川入?yún)?shù)
event.removeListener('namea', name)
event.emit('namea', '小解');

刪除 namea事件中的name屬性,設(shè)置兩個,刪除了一個name,只留下了name2的結(jié)果。

removeAllListeners()

刪除所有的事件監(jiān)聽屬性,只需要寫事件名,里面的監(jiān)聽屬性都會被刪除。

const eve = require("events");
const { removeListener } = require("process");
//導(dǎo)入模塊
var event = new eve.EventEmitter();
//進行實例化聲明  on  once addListener
let name = function (a) {
    console.log(`堅毅的${a}同志`);
}
let name2 = function (a) {
    console.log(`堅毅的${a}同志`);
}
event.once('namea', name)
event.once('namea', name2)
//觸發(fā)事件冰川入?yún)?shù)
event.removeAllListeners('namea')
event.emit('namea', '小解');

總結(jié)

到此這篇關(guān)于Node.JS事件的綁定與觸發(fā)的文章就介紹到這了,更多相關(guān)Node.JS事件綁定與觸發(fā)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Node.js使用gm拼裝sprite圖片

    Node.js使用gm拼裝sprite圖片

    這篇文章主要介紹了Node.js使用gm拼裝sprite圖片的相關(guān)資料,需要的朋友可以參考下
    2017-07-07
  • nvm版本導(dǎo)致npm?install報錯Unexpected?token?'.'的解決辦法

    nvm版本導(dǎo)致npm?install報錯Unexpected?token?'.'的解決辦法

    最近做項目遇到npm install 的問題,下面這篇文章主要給大家介紹了關(guān)于nvm版本導(dǎo)致npm?install報錯Unexpected?token?'.'的解決辦法,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2022-07-07
  • 利用node.js搭建簡單web服務(wù)器的方法教程

    利用node.js搭建簡單web服務(wù)器的方法教程

    本文主題是使用node來搭建最簡單的web服務(wù)器,其后可以自己根據(jù)需要深入了解,目前在開發(fā)過程中可以用來模擬與服務(wù)器進行簡單的交互,比如返回的資源控制等。需要的朋友可以參考學(xué)習(xí),下面來一起看看吧。
    2017-02-02
  • Node.js項目中調(diào)用JavaScript的EJS模板庫的方法

    Node.js項目中調(diào)用JavaScript的EJS模板庫的方法

    這篇文章主要介紹了Node.js項目中調(diào)用JavaScript的EJS模板庫的方法,通過EJS模板引擎可以制作出維護性良好的HTML代碼結(jié)構(gòu),需要的朋友可以參考下
    2016-03-03
  • nodejs基于WS模塊實現(xiàn)WebSocket聊天功能的方法

    nodejs基于WS模塊實現(xiàn)WebSocket聊天功能的方法

    這篇文章主要介紹了nodejs基于WS模塊實現(xiàn)WebSocket聊天功能的方法,結(jié)合實例形式分析了nodejs使用WS模塊進行WebSocket通信實現(xiàn)聊天功能的具體操作技巧,需要的朋友可以參考下
    2018-01-01
  • NodeJS實現(xiàn)客戶端js加密

    NodeJS實現(xiàn)客戶端js加密

    本文主要介紹了NodeJS實現(xiàn)客戶端js加密的思路與方法,具有一定的參考價值,下面跟著小編一起來看下吧
    2017-01-01
  • Node.js dgram模塊實現(xiàn)UDP通信示例代碼

    Node.js dgram模塊實現(xiàn)UDP通信示例代碼

    這篇文章主要介紹了Node.js dgram模塊實現(xiàn)UDP通信示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • Nodejs中koa2連接mysql的實現(xiàn)示例

    Nodejs中koa2連接mysql的實現(xiàn)示例

    本文主要介紹了Nodejs中koa2連接mysql的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • npm?install常見報錯以及問題詳解

    npm?install常見報錯以及問題詳解

    npm?install總是一言難盡,下面這篇文章主要給大家介紹了關(guān)于npm?install常見報錯以及問題的相關(guān)資料,文中通過圖文以及實例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-02-02
  • Node.js開源應(yīng)用框架HapiJS介紹

    Node.js開源應(yīng)用框架HapiJS介紹

    這篇文章主要介紹了Node.js開源應(yīng)用框架HapiJS介紹,本文講解了HapiJS介紹、HapiJS安裝和項目配置和開發(fā)實例等內(nèi)容,需要的朋友可以參考下
    2015-01-01

最新評論