Udostępnij przez


NodeJSReadableStream interface

Strumień z możliwością odczytu Node.js, który ma również metodę destroy .

Rozszerza

ReadableStream

Odziedziczone właściwości

readable

Metody

destroy(Error)

Zniszczyć strumień. Opcjonalnie emituj zdarzenie "error" i emituj zdarzenie "close" (chyba że parametr emitClose ma wartość false). Po wykonaniu tego wywołania zasoby wewnętrzne zostaną zwolnione.

Metody dziedziczone

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

Alias dla elementu emitter.on(eventName, listener).

emit<E>(string | symbol, any[])

Synchronicznie wywołuje każdy odbiornik zarejestrowany dla zdarzenia o nazwie eventName, w kolejności, w której zostały zarejestrowane, przekazując podane argumenty do każdego.

Zwraca true, jeśli zdarzenie miało odbiorniki, false w przeciwnym razie.

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()

Zwraca tablicę z listą zdarzeń, dla których emiter zarejestrował odbiorniki.

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()

Zwraca bieżącą wartość maksymalnego odbiornika dla EventEmitter, która jest ustawiona przez emitter.setMaxListeners(n) lub domyślnie ma wartość events.defaultMaxListeners.

isPaused()
listenerCount<E>(string | symbol, (args: any[]) => void)

Zwraca liczbę odbiorników nasłuchujących zdarzenia o nazwie eventName. W przypadku podania listener zostanie zwrócona liczba znalezionych odbiorników na liście odbiorników zdarzenia.

listeners<E>(string | symbol)

Zwraca kopię tablicy odbiorników dla zdarzenia o nazwie eventName.

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

Alias dla elementu emitter.removeListener().

on<E>(string | symbol, (args: any[]) => void)

Dodaje funkcję listener na końcu tablicy odbiorników dla zdarzenia o nazwie eventName. Nie są sprawdzane, czy listener został już dodany. Wiele wywołań przekazujących tę samą kombinację eventName i listener spowoduje dodanie listener i wywołanie wielu razy.

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

Zwraca odwołanie do EventEmitter, aby wywołania mogły być łańcuchowe.

Domyślnie odbiorniki zdarzeń są wywoływane w kolejności, w której są dodawane. Metodę emitter.prependListener() można użyć jako alternatywy, aby dodać odbiornik zdarzeń na początku tablicy odbiorników.

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

Dodaje funkcję jednorazowąlistener dla zdarzenia o nazwie eventName. Przy następnym wyzwoleniu eventName ten odbiornik zostanie usunięty, a następnie wywołany.

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

Zwraca odwołanie do EventEmitter, aby wywołania mogły być łańcuchowe.

Domyślnie odbiorniki zdarzeń są wywoływane w kolejności, w której są dodawane. Metodę emitter.prependOnceListener() można użyć jako alternatywy, aby dodać odbiornik zdarzeń na początku tablicy odbiorników.

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
pause()
pipe<T>(T, { end?: boolean })
prependListener<E>(string | symbol, (args: any[]) => void)

Dodaje funkcję listener do rozpoczynającej się tablicy odbiorników dla zdarzenia o nazwie eventName. Nie są sprawdzane, czy listener został już dodany. Wiele wywołań przekazujących tę samą kombinację eventName i listener spowoduje dodanie listener i wywołanie wielu razy.

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

Zwraca odwołanie do EventEmitter, aby wywołania mogły być łańcuchowe.

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

Dodaje funkcję jednorazowąlistener dla zdarzenia o nazwie eventName do rozpoczynającej się tablicy odbiorników. Następnym razem, gdy eventName zostanie wyzwolony, ten odbiornik zostanie usunięty, a następnie wywołany.

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

Zwraca odwołanie do EventEmitter, aby wywołania mogły być łańcuchowe.

rawListeners<E>(string | symbol)

Zwraca kopię tablicy odbiorników dla zdarzenia o nazwie eventName, w tym wszelkie otoki (takie jak te utworzone przez .once()).

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');
read(number)
removeAllListeners<E>(string | symbol)

Usuwa wszystkie odbiorniki lub te z określonych eventName.

Źle jest usunąć odbiorniki dodane gdzie indziej w kodzie, szczególnie w przypadku utworzenia wystąpienia EventEmitter przez inny składnik lub moduł (np. gniazda lub strumienie plików).

Zwraca odwołanie do EventEmitter, aby wywołania mogły być łańcuchowe.

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

Usuwa określone listener z tablicy odbiorników dla zdarzenia o nazwie eventName.

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

removeListener() usunie co najwyżej jedno wystąpienie odbiornika z tablicy odbiornika. Jeśli jakikolwiek pojedynczy odbiornik został dodany wiele razy do tablicy odbiornika dla określonego eventName, removeListener() należy wywołać wiele razy, aby usunąć każde wystąpienie.

Po emitowaniu zdarzenia wszystkie odbiorniki dołączone do niego w momencie emitowania są wywoływane w kolejności. Oznacza to, że wywołania removeListener() lub removeAllListeners() emisji i przed zakończeniem wykonania przez ostatniego słuchacza nie usuną ich z emit() trwających. Kolejne zdarzenia zachowują się zgodnie z oczekiwaniami.

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

Ponieważ słuchacze są zarządzane za pomocą wewnętrznej tablicy, wywołanie tego zmienia indeksy pozycji każdego słuchacza zarejestrowanego po usunięciu tego nasłuchu. Nie będzie to miało wpływu na kolejność wywoływanych odbiorników, ale oznacza to, że wszystkie kopie tablicy odbiorników zwrócone przez metodę emitter.listeners() będą musiały zostać ponownie odtworzone.

Gdy pojedyncza funkcja została dodana jako procedura obsługi wiele razy dla pojedynczego zdarzenia (jak w poniższym przykładzie), removeListener() usunie ostatnio dodane wystąpienie. W przykładzie odbiornik once('ping') zostanie usunięty:

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');

Zwraca odwołanie do EventEmitter, aby wywołania mogły być łańcuchowe.

resume()
setEncoding(BufferEncoding)
setMaxListeners(number)

Domyślnie EventEmitters wyświetli ostrzeżenie, jeśli dla określonego zdarzenia zostanie dodane więcej niż 10 odbiorniki. Jest to przydatna wartość domyślna, która ułatwia znajdowanie przecieków pamięci. Metoda emitter.setMaxListeners() umożliwia zmodyfikowanie limitu dla tego konkretnego wystąpienia EventEmitter. Wartość można ustawić na Infinity (lub 0), aby wskazać nieograniczoną liczbę odbiorników.

Zwraca odwołanie do EventEmitter, aby wywołania mogły być łańcuchowe.

unpipe(WritableStream)
unshift(string | Uint8Array, BufferEncoding)
wrap(ReadableStream)
[asyncIterator]()
[captureRejectionSymbol](Error, string | symbol, any[])

Metoda ta Symbol.for('nodejs.rejection') jest wywoływana w przypadku, gdy podczas emisji zdarzenia następuje odrzucenie obietnicy i captureRejections jest włączona na emiterze. Można użyć events.captureRejectionSymbol go zamiast .Symbol.for('nodejs.rejection')

import { EventEmitter, captureRejectionSymbol } from 'node:events';

class MyClass extends EventEmitter {
  constructor() {
    super({ captureRejections: true });
  }

  [captureRejectionSymbol](err, event, ...args) {
    console.log('rejection happened for', event, 'with', err, ...args);
    this.destroy(err);
  }

  destroy(err) {
    // Tear the resource down here.
  }
}

Szczegóły odziedziczonej właściwości

readable

readable: boolean

Wartość nieruchomości

boolean

Dziedziczone z NodeJS.ReadableStream.readable

Szczegóły metody

destroy(Error)

Zniszczyć strumień. Opcjonalnie emituj zdarzenie "error" i emituj zdarzenie "close" (chyba że parametr emitClose ma wartość false). Po wykonaniu tego wywołania zasoby wewnętrzne zostaną zwolnione.

function destroy(error?: Error)

Parametry

error

Error

Szczegóły dziedziczonej metody

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

Alias dla elementu emitter.on(eventName, listener).

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

Parametry

eventName

string | symbol

listener

(args: any[]) => void

Zwraca

Dziedziczone z NodeJS.ReadableStream.addListener

emit<E>(string | symbol, any[])

Synchronicznie wywołuje każdy odbiornik zarejestrowany dla zdarzenia o nazwie eventName, w kolejności, w której zostały zarejestrowane, przekazując podane argumenty do każdego.

Zwraca true, jeśli zdarzenie miało odbiorniki, false w przeciwnym razie.

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<E>(eventName: string | symbol, args: any[]): boolean

Parametry

eventName

string | symbol

args

any[]

Zwraca

boolean

Dziedziczone z NodeJS.ReadableStream.emit

eventNames()

Zwraca tablicę z listą zdarzeń, dla których emiter zarejestrował odbiorniki.

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)[]

Zwraca

(string | symbol)[]

Dziedziczone z NodeJS.ReadableStream.eventNames

getMaxListeners()

Zwraca bieżącą wartość maksymalnego odbiornika dla EventEmitter, która jest ustawiona przez emitter.setMaxListeners(n) lub domyślnie ma wartość events.defaultMaxListeners.

function getMaxListeners(): number

Zwraca

number

Dziedziczone z NodeJS.ReadableStream.getMaxListeners

isPaused()

function isPaused(): boolean

Zwraca

boolean

Dziedziczone z NodeJS.ReadableStream.isPaused

listenerCount<E>(string | symbol, (args: any[]) => void)

Zwraca liczbę odbiorników nasłuchujących zdarzenia o nazwie eventName. W przypadku podania listener zostanie zwrócona liczba znalezionych odbiorników na liście odbiorników zdarzenia.

function listenerCount<E>(eventName: string | symbol, listener?: (args: any[]) => void): number

Parametry

eventName

string | symbol

Nazwa zdarzenia, dla których jest nasłuchiwane

listener

(args: any[]) => void

Funkcja obsługi zdarzeń

Zwraca

number

Dziedziczone z NodeJS.ReadableStream.listenerCount

listeners<E>(string | symbol)

Zwraca kopię tablicy odbiorników dla zdarzenia o nazwie eventName.

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

Parametry

eventName

string | symbol

Zwraca

(args: any[]) => void[]

Dziedziczone z NodeJS.ReadableStream.listeners

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

Alias dla elementu emitter.removeListener().

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

Parametry

eventName

string | symbol

listener

(args: any[]) => void

Zwraca

Dziedziczone z NodeJS.ReadableStream.off

on<E>(string | symbol, (args: any[]) => void)

Dodaje funkcję listener na końcu tablicy odbiorników dla zdarzenia o nazwie eventName. Nie są sprawdzane, czy listener został już dodany. Wiele wywołań przekazujących tę samą kombinację eventName i listener spowoduje dodanie listener i wywołanie wielu razy.

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

Zwraca odwołanie do EventEmitter, aby wywołania mogły być łańcuchowe.

Domyślnie odbiorniki zdarzeń są wywoływane w kolejności, w której są dodawane. Metodę emitter.prependListener() można użyć jako alternatywy, aby dodać odbiornik zdarzeń na początku tablicy odbiorników.

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

Parametry

eventName

string | symbol

Nazwa zdarzenia.

listener

(args: any[]) => void

Funkcja wywołania zwrotnego

Zwraca

Dziedziczone z NodeJS.ReadableStream.on

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

Dodaje funkcję jednorazowąlistener dla zdarzenia o nazwie eventName. Przy następnym wyzwoleniu eventName ten odbiornik zostanie usunięty, a następnie wywołany.

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

Zwraca odwołanie do EventEmitter, aby wywołania mogły być łańcuchowe.

Domyślnie odbiorniki zdarzeń są wywoływane w kolejności, w której są dodawane. Metodę emitter.prependOnceListener() można użyć jako alternatywy, aby dodać odbiornik zdarzeń na początku tablicy odbiorników.

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<E>(eventName: string | symbol, listener: (args: any[]) => void): NodeJSReadableStream

Parametry

eventName

string | symbol

Nazwa zdarzenia.

listener

(args: any[]) => void

Funkcja wywołania zwrotnego

Zwraca

Dziedziczone z NodeJS.ReadableStream.once

pause()

function pause(): NodeJSReadableStream

Zwraca

Dziedziczone z NodeJS.ReadableStream.pause

pipe<T>(T, { end?: boolean })

function pipe<T>(destination: T, options?: { end?: boolean }): T

Parametry

destination

T

options

{ end?: boolean }

Zwraca

T

Dziedziczone z NodeJS.ReadableStream.pipe

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

Dodaje funkcję listener do rozpoczynającej się tablicy odbiorników dla zdarzenia o nazwie eventName. Nie są sprawdzane, czy listener został już dodany. Wiele wywołań przekazujących tę samą kombinację eventName i listener spowoduje dodanie listener i wywołanie wielu razy.

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

Zwraca odwołanie do EventEmitter, aby wywołania mogły być łańcuchowe.

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

Parametry

eventName

string | symbol

Nazwa zdarzenia.

listener

(args: any[]) => void

Funkcja wywołania zwrotnego

Zwraca

Dziedziczone z NodeJS.ReadableStream.prependListener

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

Dodaje funkcję jednorazowąlistener dla zdarzenia o nazwie eventName do rozpoczynającej się tablicy odbiorników. Następnym razem, gdy eventName zostanie wyzwolony, ten odbiornik zostanie usunięty, a następnie wywołany.

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

Zwraca odwołanie do EventEmitter, aby wywołania mogły być łańcuchowe.

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

Parametry

eventName

string | symbol

Nazwa zdarzenia.

listener

(args: any[]) => void

Funkcja wywołania zwrotnego

Zwraca

Dziedziczone z NodeJS.ReadableStream.prependOnceListener

rawListeners<E>(string | symbol)

Zwraca kopię tablicy odbiorników dla zdarzenia o nazwie eventName, w tym wszelkie otoki (takie jak te utworzone przez .once()).

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<E>(eventName: string | symbol): (args: any[]) => void[]

Parametry

eventName

string | symbol

Zwraca

(args: any[]) => void[]

Dziedziczone z NodeJS.ReadableStream.rawListeners

read(number)

function read(size?: number): string | Buffer

Parametry

size

number

Zwraca

string | Buffer

Dziedziczone z NodeJS.ReadableStream.read

removeAllListeners<E>(string | symbol)

Usuwa wszystkie odbiorniki lub te z określonych eventName.

Źle jest usunąć odbiorniki dodane gdzie indziej w kodzie, szczególnie w przypadku utworzenia wystąpienia EventEmitter przez inny składnik lub moduł (np. gniazda lub strumienie plików).

Zwraca odwołanie do EventEmitter, aby wywołania mogły być łańcuchowe.

function removeAllListeners<E>(eventName?: string | symbol): NodeJSReadableStream

Parametry

eventName

string | symbol

Zwraca

Dziedziczone z NodeJS.ReadableStream.removeAllListeners

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

Usuwa określone listener z tablicy odbiorników dla zdarzenia o nazwie eventName.

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

removeListener() usunie co najwyżej jedno wystąpienie odbiornika z tablicy odbiornika. Jeśli jakikolwiek pojedynczy odbiornik został dodany wiele razy do tablicy odbiornika dla określonego eventName, removeListener() należy wywołać wiele razy, aby usunąć każde wystąpienie.

Po emitowaniu zdarzenia wszystkie odbiorniki dołączone do niego w momencie emitowania są wywoływane w kolejności. Oznacza to, że wywołania removeListener() lub removeAllListeners() emisji i przed zakończeniem wykonania przez ostatniego słuchacza nie usuną ich z emit() trwających. Kolejne zdarzenia zachowują się zgodnie z oczekiwaniami.

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

Ponieważ słuchacze są zarządzane za pomocą wewnętrznej tablicy, wywołanie tego zmienia indeksy pozycji każdego słuchacza zarejestrowanego po usunięciu tego nasłuchu. Nie będzie to miało wpływu na kolejność wywoływanych odbiorników, ale oznacza to, że wszystkie kopie tablicy odbiorników zwrócone przez metodę emitter.listeners() będą musiały zostać ponownie odtworzone.

Gdy pojedyncza funkcja została dodana jako procedura obsługi wiele razy dla pojedynczego zdarzenia (jak w poniższym przykładzie), removeListener() usunie ostatnio dodane wystąpienie. W przykładzie odbiornik once('ping') zostanie usunięty:

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');

Zwraca odwołanie do EventEmitter, aby wywołania mogły być łańcuchowe.

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

Parametry

eventName

string | symbol

listener

(args: any[]) => void

Zwraca

Dziedziczone z NodeJS.ReadableStream.removeListener

resume()

function resume(): NodeJSReadableStream

Zwraca

Dziedziczone z NodeJS.ReadableStream.resume

setEncoding(BufferEncoding)

function setEncoding(encoding: BufferEncoding): NodeJSReadableStream

Parametry

encoding

BufferEncoding

Zwraca

Dziedziczone z NodeJS.ReadableStream.setEncoding

setMaxListeners(number)

Domyślnie EventEmitters wyświetli ostrzeżenie, jeśli dla określonego zdarzenia zostanie dodane więcej niż 10 odbiorniki. Jest to przydatna wartość domyślna, która ułatwia znajdowanie przecieków pamięci. Metoda emitter.setMaxListeners() umożliwia zmodyfikowanie limitu dla tego konkretnego wystąpienia EventEmitter. Wartość można ustawić na Infinity (lub 0), aby wskazać nieograniczoną liczbę odbiorników.

Zwraca odwołanie do EventEmitter, aby wywołania mogły być łańcuchowe.

function setMaxListeners(n: number): NodeJSReadableStream

Parametry

n

number

Zwraca

Dziedziczone z NodeJS.ReadableStream.setMaxListeners

unpipe(WritableStream)

function unpipe(destination?: WritableStream): NodeJSReadableStream

Parametry

destination

WritableStream

Zwraca

Dziedziczone z NodeJS.ReadableStream.unpipe

unshift(string | Uint8Array, BufferEncoding)

function unshift(chunk: string | Uint8Array, encoding?: BufferEncoding)

Parametry

chunk

string | Uint8Array

encoding

BufferEncoding

Dziedziczone z NodeJS.ReadableStream.unshift

wrap(ReadableStream)

function wrap(oldStream: ReadableStream): NodeJSReadableStream

Parametry

oldStream

ReadableStream

Zwraca

Dziedziczone z NodeJS.ReadableStream.wrap

[asyncIterator]()

function [asyncIterator](): AsyncIterableIterator<string | Buffer>

Zwraca

AsyncIterableIterator<string | Buffer>

Odziedziczone po NodeJS.ReadableStream.__@asyncIterator@163

[captureRejectionSymbol](Error, string | symbol, any[])

Metoda ta Symbol.for('nodejs.rejection') jest wywoływana w przypadku, gdy podczas emisji zdarzenia następuje odrzucenie obietnicy i captureRejections jest włączona na emiterze. Można użyć events.captureRejectionSymbol go zamiast .Symbol.for('nodejs.rejection')

import { EventEmitter, captureRejectionSymbol } from 'node:events';

class MyClass extends EventEmitter {
  constructor() {
    super({ captureRejections: true });
  }

  [captureRejectionSymbol](err, event, ...args) {
    console.log('rejection happened for', event, 'with', err, ...args);
    this.destroy(err);
  }

  destroy(err) {
    // Tear the resource down here.
  }
}
function [captureRejectionSymbol](error: Error, event: string | symbol, args: any[])

Parametry

error

Error

event

string | symbol

args

any[]

Odziedziczone po NodeJS.ReadableStream.__@captureRejectionSymbol@180