Aracılığıyla paylaş


Receiver interface

Extends

EventEmitter

Yöntemler

on("errorReceived", (err: Error) => void)
on("message", (msg: Message) => void)
on(string, Function)

Devralınan Yöntemler

addListener<K>(string | symbol, (args: any[]) => void)

diğer adı emitter.on(eventName, listener).

emit<K>(string | symbol, AnyRest)

adlı eventNameolay için kaydedilen dinleyicilerin her birini, kaydedildikleri sırayla zaman uyumlu olarak çağırır ve sağlanan bağımsız değişkenleri her birine geçirir.

Olayın dinleyicileri varsa, false aksi takdirde döndürürtrue.

import { EventEmitter } from 'node:events';
const myEmitter = new EventEmitter();

// First listener
myEmitter.on('event', function firstListener() {
  console.log('Helloooo! first listener');
});
// Second listener
myEmitter.on('event', function secondListener(arg1, arg2) {
  console.log(`event with parameters ${arg1}, ${arg2} in second listener`);
});
// Third listener
myEmitter.on('event', function thirdListener(...args) {
  const parameters = args.join(', ');
  console.log(`event with parameters ${parameters} in third listener`);
});

console.log(myEmitter.listeners('event'));

myEmitter.emit('event', 1, 2, 3, 4, 5);

// Prints:
// [
//   [Function: firstListener],
//   [Function: secondListener],
//   [Function: thirdListener]
// ]
// Helloooo! first listener
// event with parameters 1, 2 in second listener
// event with parameters 1, 2, 3, 4, 5 in third listener
eventNames()

Vericinin dinleyicileri kaydettiği olayları listeleyen bir dizi döndürür. Dizideki değerler dize veya Symboldizelerdir.

import { EventEmitter } from 'node:events';

const myEE = new EventEmitter();
myEE.on('foo', () => {});
myEE.on('bar', () => {});

const sym = Symbol('symbol');
myEE.on(sym, () => {});

console.log(myEE.eventNames());
// Prints: [ 'foo', 'bar', Symbol(symbol) ]
getMaxListeners()

tarafından ayarlanan veya varsayılan olarak <xref:defaultMaxListeners>olarak ayarlanan emitter.setMaxListeners(n) geçerli en yüksek dinleyici değerini EventEmitter döndürür.

listenerCount<K>(string | symbol, Function)

adlı eventNameolayı dinleyen dinleyicilerin sayısını döndürür. Sağlanırsa listener , dinleyicinin olay dinleyicileri listesinde kaç kez bulunduğunu döndürür.

listeners<K>(string | symbol)

adlı eventNameolay için dinleyici dizisinin bir kopyasını döndürür.

server.on('connection', (stream) => {
  console.log('someone connected!');
});
console.log(util.inspect(server.listeners('connection')));
// Prints: [ [Function] ]
off<K>(string | symbol, (args: any[]) => void)

için emitter.removeListener()diğer ad.

once<K>(string | symbol, (args: any[]) => void)

adlı eventNameolay için tek seferliklistener bir işlev ekler. Bir sonraki tetiklendiğinde eventName , bu dinleyici kaldırılır ve sonra çağrılır.

server.once('connection', (stream) => {
  console.log('Ah, we have our first user!');
});

Çağrıların EventEmitterzincirlenebilmesi için öğesine bir başvuru döndürür.

Varsayılan olarak, olay dinleyicileri eklendikleri sırayla çağrılır. yöntemi, emitter.prependOnceListener() olay dinleyicisini dinleyici dizisinin başına eklemek için alternatif olarak kullanılabilir.

import { EventEmitter } from 'node:events';
const myEE = new EventEmitter();
myEE.once('foo', () => console.log('a'));
myEE.prependOnceListener('foo', () => console.log('b'));
myEE.emit('foo');
// Prints:
//   b
//   a
prependListener<K>(string | symbol, (args: any[]) => void)

listener adlı eventNameolay için işlevi dinleyiciler dizisinin başına ekler. öğesinin zaten eklenip eklenmediğini listener görmek için denetim yapılmaz. aynı ve birleşimini eventNamelistener geçen birden çok çağrı, birden çok kez eklenmesine ve çağrılmasını listener sağlar.

server.prependListener('connection', (stream) => {
  console.log('someone connected!');
});

Çağrıların EventEmitterzincirlenebilmesi için öğesine bir başvuru döndürür.

prependOnceListener<K>(string | symbol, (args: any[]) => void)

adlı olay eventName için dinleyiciler dizisinin başınatek seferliklistener bir işlev ekler. Bir sonraki tetiklendiğinde eventName , bu dinleyici kaldırılır ve ardından çağrılır.

server.prependOnceListener('connection', (stream) => {
  console.log('Ah, we have our first user!');
});

Çağrıların EventEmitterzincirlenebilmesi için öğesine bir başvuru döndürür.

rawListeners<K>(string | symbol)

adlı eventNameolay için dinleyici dizisinin, sarmalayıcılar da dahil olmak üzere bir kopyasını döndürür (örneğin, tarafından .once()oluşturulanlar).

import { EventEmitter } from 'node:events';
const emitter = new EventEmitter();
emitter.once('log', () => console.log('log once'));

// Returns a new Array with a function `onceWrapper` which has a property
// `listener` which contains the original listener bound above
const listeners = emitter.rawListeners('log');
const logFnWrapper = listeners[0];

// Logs "log once" to the console and does not unbind the `once` event
logFnWrapper.listener();

// Logs "log once" to the console and removes the listener
logFnWrapper();

emitter.on('log', () => console.log('log persistently'));
// Will return a new Array with a single function bound by `.on()` above
const newListeners = emitter.rawListeners('log');

// Logs "log persistently" twice
newListeners[0]();
emitter.emit('log');
removeAllListeners(string | symbol)

Tüm dinleyicileri veya belirtilen eventNamedinleyicileri kaldırır.

Özellikle örnek başka bir bileşen veya modül (örneğin yuvalar veya dosya akışları) tarafından oluşturulduğunda kodun EventEmitter başka bir yerine eklenen dinleyicileri kaldırmak kötü bir uygulamadır.

Çağrıların EventEmitterzincirlenebilmesi için öğesine bir başvuru döndürür.

removeListener<K>(string | symbol, (args: any[]) => void)

adlı eventNameolay için dinleyici dizisinden belirtilen listener öğesini kaldırır.

const callback = (stream) => {
  console.log('someone connected!');
};
server.on('connection', callback);
// ...
server.removeListener('connection', callback);

removeListener() en fazla bir dinleyici örneğini dinleyici dizisinden kaldırır. Belirtilen eventNameremoveListener() için dinleyici dizisine birden çok kez tek bir dinleyici eklendiyse, her örneği kaldırmak için birden çok kez çağrılmalıdır.

Bir olay yayımlandıktan sonra, yayma sırasında ona eklenen tüm dinleyiciler sırayla çağrılır. Bu, yadıktan sonra ve son dinleyici yürütmeyi bitirmeden önce yapılan veya removeListener()removeAllListeners() çağrılarının devam edendenemit() kaldırılmayacağını gösterir. Sonraki olaylar beklendiği gibi davranır.

import { EventEmitter } from 'node:events';
class MyEmitter extends EventEmitter {}
const myEmitter = new MyEmitter();

const callbackA = () => {
  console.log('A');
  myEmitter.removeListener('event', callbackB);
};

const callbackB = () => {
  console.log('B');
};

myEmitter.on('event', callbackA);

myEmitter.on('event', callbackB);

// callbackA removes listener callbackB but it will still be called.
// Internal listener array at time of emit [callbackA, callbackB]
myEmitter.emit('event');
// Prints:
//   A
//   B

// callbackB is now removed.
// Internal listener array [callbackA]
myEmitter.emit('event');
// Prints:
//   A

Dinleyiciler bir iç dizi kullanılarak yönetildiğinden, bu çağrı, dinleyici kaldırıldıktan sonra kaydedilen herhangi bir dinleyicinin konum dizinlerini değiştirir. Bu, dinleyicilerin çağrılma sırasını etkilemez, ancak yöntemi tarafından emitter.listeners() döndürülen dinleyici dizisinin kopyalarının yeniden oluşturulması gerektiği anlamına gelir.

Tek bir işlev tek bir olay için birden çok kez işleyici olarak eklendiğinde (aşağıdaki örnekte olduğu gibi), removeListener() en son eklenen örneği kaldırır. once('ping') Örnekte dinleyici kaldırılır:

import { EventEmitter } from 'node:events';
const ee = new EventEmitter();

function pong() {
  console.log('pong');
}

ee.on('ping', pong);
ee.once('ping', pong);
ee.removeListener('ping', pong);

ee.emit('ping');
ee.emit('ping');

Çağrıların EventEmitterzincirlenebilmesi için öğesine bir başvuru döndürür.

setMaxListeners(number)

Varsayılan olarak EventEmitter, belirli bir olay için birden fazla 10 dinleyici eklenirse s bir uyarı yazdırır. Bu, bellek sızıntılarını bulmaya yardımcı olan kullanışlı bir varsayılan değerdir. yöntemi, emitter.setMaxListeners() bu belirli EventEmitter örnek için sınırın değiştirilmesine izin verir. Sınırsız sayıda dinleyiciyi belirtmek için değer (veya 0) olarak ayarlanabilir Infinity .

Çağrıların EventEmitterzincirlenebilmesi için öğesine bir başvuru döndürür.

[captureRejectionSymbol]<K>(Error, string | symbol, AnyRest)

Yöntem Ayrıntıları

on("errorReceived", (err: Error) => void)

function on(type: "errorReceived", func: (err: Error) => void): Receiver

Parametreler

type

"errorReceived"

func

(err: Error) => void

Döndürülenler

on("message", (msg: Message) => void)

function on(type: "message", func: (msg: Message) => void): Receiver

Parametreler

type

"message"

func

(msg: Message) => void

Döndürülenler

on(string, Function)

function on(type: string, func: Function): Receiver

Parametreler

type

string

func

Function

Döndürülenler

Devralınan Yöntemin Ayrıntıları

addListener<K>(string | symbol, (args: any[]) => void)

diğer adı emitter.on(eventName, listener).

function addListener<K>(eventName: string | symbol, listener: (args: any[]) => void): Receiver

Parametreler

eventName

string | symbol

listener

(args: any[]) => void

Döndürülenler

Devralınan EventEmitter.addListener

emit<K>(string | symbol, AnyRest)

adlı eventNameolay için kaydedilen dinleyicilerin her birini, kaydedildikleri sırayla zaman uyumlu olarak çağırır ve sağlanan bağımsız değişkenleri her birine geçirir.

Olayın dinleyicileri varsa, false aksi takdirde döndürürtrue.

import { EventEmitter } from 'node:events';
const myEmitter = new EventEmitter();

// First listener
myEmitter.on('event', function firstListener() {
  console.log('Helloooo! first listener');
});
// Second listener
myEmitter.on('event', function secondListener(arg1, arg2) {
  console.log(`event with parameters ${arg1}, ${arg2} in second listener`);
});
// Third listener
myEmitter.on('event', function thirdListener(...args) {
  const parameters = args.join(', ');
  console.log(`event with parameters ${parameters} in third listener`);
});

console.log(myEmitter.listeners('event'));

myEmitter.emit('event', 1, 2, 3, 4, 5);

// Prints:
// [
//   [Function: firstListener],
//   [Function: secondListener],
//   [Function: thirdListener]
// ]
// Helloooo! first listener
// event with parameters 1, 2 in second listener
// event with parameters 1, 2, 3, 4, 5 in third listener
function emit<K>(eventName: string | symbol, args: AnyRest): boolean

Parametreler

eventName

string | symbol

args

AnyRest

Döndürülenler

boolean

Devralınan EventEmitter.emit

eventNames()

Vericinin dinleyicileri kaydettiği olayları listeleyen bir dizi döndürür. Dizideki değerler dize veya Symboldizelerdir.

import { EventEmitter } from 'node:events';

const myEE = new EventEmitter();
myEE.on('foo', () => {});
myEE.on('bar', () => {});

const sym = Symbol('symbol');
myEE.on(sym, () => {});

console.log(myEE.eventNames());
// Prints: [ 'foo', 'bar', Symbol(symbol) ]
function eventNames(): (string | symbol)[]

Döndürülenler

(string | symbol)[]

Devralınan EventEmitter.eventNames

getMaxListeners()

tarafından ayarlanan veya varsayılan olarak <xref:defaultMaxListeners>olarak ayarlanan emitter.setMaxListeners(n) geçerli en yüksek dinleyici değerini EventEmitter döndürür.

function getMaxListeners(): number

Döndürülenler

number

Devralınan EventEmitter.getMaxListeners

listenerCount<K>(string | symbol, Function)

adlı eventNameolayı dinleyen dinleyicilerin sayısını döndürür. Sağlanırsa listener , dinleyicinin olay dinleyicileri listesinde kaç kez bulunduğunu döndürür.

function listenerCount<K>(eventName: string | symbol, listener?: Function): number

Parametreler

eventName

string | symbol

Dinlenen olayın adı

listener

Function

Olay işleyici işlevi

Döndürülenler

number

Devralınan EventEmitter.listenerCount

listeners<K>(string | symbol)

adlı eventNameolay için dinleyici dizisinin bir kopyasını döndürür.

server.on('connection', (stream) => {
  console.log('someone connected!');
});
console.log(util.inspect(server.listeners('connection')));
// Prints: [ [Function] ]
function listeners<K>(eventName: string | symbol): Function[]

Parametreler

eventName

string | symbol

Döndürülenler

Function[]

Devralınan EventEmitter.listeners

off<K>(string | symbol, (args: any[]) => void)

için emitter.removeListener()diğer ad.

function off<K>(eventName: string | symbol, listener: (args: any[]) => void): Receiver

Parametreler

eventName

string | symbol

listener

(args: any[]) => void

Döndürülenler

Devralınan EventEmitter.off

once<K>(string | symbol, (args: any[]) => void)

adlı eventNameolay için tek seferliklistener bir işlev ekler. Bir sonraki tetiklendiğinde eventName , bu dinleyici kaldırılır ve sonra çağrılır.

server.once('connection', (stream) => {
  console.log('Ah, we have our first user!');
});

Çağrıların EventEmitterzincirlenebilmesi için öğesine bir başvuru döndürür.

Varsayılan olarak, olay dinleyicileri eklendikleri sırayla çağrılır. yöntemi, emitter.prependOnceListener() olay dinleyicisini dinleyici dizisinin başına eklemek için alternatif olarak kullanılabilir.

import { EventEmitter } from 'node:events';
const myEE = new EventEmitter();
myEE.once('foo', () => console.log('a'));
myEE.prependOnceListener('foo', () => console.log('b'));
myEE.emit('foo');
// Prints:
//   b
//   a
function once<K>(eventName: string | symbol, listener: (args: any[]) => void): Receiver

Parametreler

eventName

string | symbol

Olayın adı.

listener

(args: any[]) => void

Geri çağırma işlevi

Döndürülenler

Devralınan EventEmitter.once

prependListener<K>(string | symbol, (args: any[]) => void)

listener adlı eventNameolay için işlevi dinleyiciler dizisinin başına ekler. öğesinin zaten eklenip eklenmediğini listener görmek için denetim yapılmaz. aynı ve birleşimini eventNamelistener geçen birden çok çağrı, birden çok kez eklenmesine ve çağrılmasını listener sağlar.

server.prependListener('connection', (stream) => {
  console.log('someone connected!');
});

Çağrıların EventEmitterzincirlenebilmesi için öğesine bir başvuru döndürür.

function prependListener<K>(eventName: string | symbol, listener: (args: any[]) => void): Receiver

Parametreler

eventName

string | symbol

Olayın adı.

listener

(args: any[]) => void

Geri çağırma işlevi

Döndürülenler

Devralınan EventEmitter.prependListener

prependOnceListener<K>(string | symbol, (args: any[]) => void)

adlı olay eventName için dinleyiciler dizisinin başınatek seferliklistener bir işlev ekler. Bir sonraki tetiklendiğinde eventName , bu dinleyici kaldırılır ve ardından çağrılır.

server.prependOnceListener('connection', (stream) => {
  console.log('Ah, we have our first user!');
});

Çağrıların EventEmitterzincirlenebilmesi için öğesine bir başvuru döndürür.

function prependOnceListener<K>(eventName: string | symbol, listener: (args: any[]) => void): Receiver

Parametreler

eventName

string | symbol

Olayın adı.

listener

(args: any[]) => void

Geri çağırma işlevi

Döndürülenler

Devralınan EventEmitter.prependOnceListener

rawListeners<K>(string | symbol)

adlı eventNameolay için dinleyici dizisinin, sarmalayıcılar da dahil olmak üzere bir kopyasını döndürür (örneğin, tarafından .once()oluşturulanlar).

import { EventEmitter } from 'node:events';
const emitter = new EventEmitter();
emitter.once('log', () => console.log('log once'));

// Returns a new Array with a function `onceWrapper` which has a property
// `listener` which contains the original listener bound above
const listeners = emitter.rawListeners('log');
const logFnWrapper = listeners[0];

// Logs "log once" to the console and does not unbind the `once` event
logFnWrapper.listener();

// Logs "log once" to the console and removes the listener
logFnWrapper();

emitter.on('log', () => console.log('log persistently'));
// Will return a new Array with a single function bound by `.on()` above
const newListeners = emitter.rawListeners('log');

// Logs "log persistently" twice
newListeners[0]();
emitter.emit('log');
function rawListeners<K>(eventName: string | symbol): Function[]

Parametreler

eventName

string | symbol

Döndürülenler

Function[]

Devralınan EventEmitter.rawListeners

removeAllListeners(string | symbol)

Tüm dinleyicileri veya belirtilen eventNamedinleyicileri kaldırır.

Özellikle örnek başka bir bileşen veya modül (örneğin yuvalar veya dosya akışları) tarafından oluşturulduğunda kodun EventEmitter başka bir yerine eklenen dinleyicileri kaldırmak kötü bir uygulamadır.

Çağrıların EventEmitterzincirlenebilmesi için öğesine bir başvuru döndürür.

function removeAllListeners(eventName?: string | symbol): Receiver

Parametreler

eventName

string | symbol

Döndürülenler

Devralınan EventEmitter.removeAllListeners

removeListener<K>(string | symbol, (args: any[]) => void)

adlı eventNameolay için dinleyici dizisinden belirtilen listener öğesini kaldırır.

const callback = (stream) => {
  console.log('someone connected!');
};
server.on('connection', callback);
// ...
server.removeListener('connection', callback);

removeListener() en fazla bir dinleyici örneğini dinleyici dizisinden kaldırır. Belirtilen eventNameremoveListener() için dinleyici dizisine birden çok kez tek bir dinleyici eklendiyse, her örneği kaldırmak için birden çok kez çağrılmalıdır.

Bir olay yayımlandıktan sonra, yayma sırasında ona eklenen tüm dinleyiciler sırayla çağrılır. Bu, yadıktan sonra ve son dinleyici yürütmeyi bitirmeden önce yapılan veya removeListener()removeAllListeners() çağrılarının devam edendenemit() kaldırılmayacağını gösterir. Sonraki olaylar beklendiği gibi davranır.

import { EventEmitter } from 'node:events';
class MyEmitter extends EventEmitter {}
const myEmitter = new MyEmitter();

const callbackA = () => {
  console.log('A');
  myEmitter.removeListener('event', callbackB);
};

const callbackB = () => {
  console.log('B');
};

myEmitter.on('event', callbackA);

myEmitter.on('event', callbackB);

// callbackA removes listener callbackB but it will still be called.
// Internal listener array at time of emit [callbackA, callbackB]
myEmitter.emit('event');
// Prints:
//   A
//   B

// callbackB is now removed.
// Internal listener array [callbackA]
myEmitter.emit('event');
// Prints:
//   A

Dinleyiciler bir iç dizi kullanılarak yönetildiğinden, bu çağrı, dinleyici kaldırıldıktan sonra kaydedilen herhangi bir dinleyicinin konum dizinlerini değiştirir. Bu, dinleyicilerin çağrılma sırasını etkilemez, ancak yöntemi tarafından emitter.listeners() döndürülen dinleyici dizisinin kopyalarının yeniden oluşturulması gerektiği anlamına gelir.

Tek bir işlev tek bir olay için birden çok kez işleyici olarak eklendiğinde (aşağıdaki örnekte olduğu gibi), removeListener() en son eklenen örneği kaldırır. once('ping') Örnekte dinleyici kaldırılır:

import { EventEmitter } from 'node:events';
const ee = new EventEmitter();

function pong() {
  console.log('pong');
}

ee.on('ping', pong);
ee.once('ping', pong);
ee.removeListener('ping', pong);

ee.emit('ping');
ee.emit('ping');

Çağrıların EventEmitterzincirlenebilmesi için öğesine bir başvuru döndürür.

function removeListener<K>(eventName: string | symbol, listener: (args: any[]) => void): Receiver

Parametreler

eventName

string | symbol

listener

(args: any[]) => void

Döndürülenler

Devralınan EventEmitter.removeListener

setMaxListeners(number)

Varsayılan olarak EventEmitter, belirli bir olay için birden fazla 10 dinleyici eklenirse s bir uyarı yazdırır. Bu, bellek sızıntılarını bulmaya yardımcı olan kullanışlı bir varsayılan değerdir. yöntemi, emitter.setMaxListeners() bu belirli EventEmitter örnek için sınırın değiştirilmesine izin verir. Sınırsız sayıda dinleyiciyi belirtmek için değer (veya 0) olarak ayarlanabilir Infinity .

Çağrıların EventEmitterzincirlenebilmesi için öğesine bir başvuru döndürür.

function setMaxListeners(n: number): Receiver

Parametreler

n

number

Döndürülenler

Devralınan EventEmitter.setMaxListeners

[captureRejectionSymbol]<K>(Error, string | symbol, AnyRest)

function [captureRejectionSymbol]<K>(error: Error, event: string | symbol, args: AnyRest)

Parametreler

error

Error

event

string | symbol

args

AnyRest

Devralınan EventEmitter.__@captureRejectionSymbol@91