NodeJSReadableStream interface
Secuencia legible Node.js que también tiene un destroy método .
- Extends
-
ReadableStream
Propiedades heredadas
| readable |
Métodos
| destroy(Error) | Destruye la secuencia. Opcionalmente, emita un evento "error" y emita un evento "close" (a menos que emitClose esté establecido en false). Después de esta llamada, se liberarán los recursos internos. |
Métodos heredados
| add |
Alias para |
| emit<E>(string | symbol, any[]) | Llama sincrónicamente a cada uno de los agentes de escucha registrados para el evento denominado Devuelve
|
| event |
Devuelve una matriz que enumera los eventos para los que el emisor ha registrado agentes de escucha.
|
| get |
Devuelve el valor máximo actual del agente de escucha para el |
| is |
|
| listener |
Devuelve el número de agentes de escucha que escuchan el evento denominado |
| listeners<E>(string | symbol) | Devuelve una copia de la matriz de agentes de escucha del evento denominado
|
| off<E>(string | symbol, (args: any[]) => void) | Alias para |
| on<E>(string | symbol, (args: any[]) => void) | Agrega la función
Devuelve una referencia al De forma predeterminada, los agentes de escucha de eventos se invocan en el orden en que se agregan. El método
|
| once<E>(string | symbol, (args: any[]) => void) | Agrega una función
Devuelve una referencia al De forma predeterminada, los agentes de escucha de eventos se invocan en el orden en que se agregan. El método
|
| pause() | |
| pipe<T>(T, { end?: boolean }) | |
| prepend |
Agrega la función
Devuelve una referencia al |
| prepend |
Agrega una función de
Devuelve una referencia al |
| raw |
Devuelve una copia de la matriz de agentes de escucha para el evento denominado
|
| read(number) | |
| remove |
Quita todos los agentes de escucha o los del Es un procedimiento incorrecto quitar agentes de escucha agregados en otro lugar del código, especialmente cuando la instancia de Devuelve una referencia al |
| remove |
Quita el
Una vez emitido un evento, se llama a todos los agentes de escucha adjuntos en el momento de emitir en orden. Esto implica que cualquier
Como los oyentes se gestionan mediante un array interno, llamar a esto cambiará los índices de posición de cualquier oyente registrado tras la eliminación del oyente. Esto no afectará al orden en el que se llama a los agentes de escucha, pero significa que las copias de la matriz del agente de escucha tal y como devuelve el método Cuando se ha agregado una sola función como controlador varias veces para un solo evento (como en el ejemplo siguiente),
Devuelve una referencia al |
| resume() | |
| set |
|
| set |
De forma predeterminada, Devuelve una referencia al |
| unpipe(Writable |
|
| unshift(string | Uint8Array, Buffer |
|
| wrap(Readable |
|
| [async |
|
| [capture |
El
|
Detalles de las propiedades heredadas
readable
readable: boolean
Valor de propiedad
boolean
Heredado de NodeJS.ReadableStream.readable
Detalles del método
destroy(Error)
Destruye la secuencia. Opcionalmente, emita un evento "error" y emita un evento "close" (a menos que emitClose esté establecido en false). Después de esta llamada, se liberarán los recursos internos.
function destroy(error?: Error)
Parámetros
- error
-
Error
Detalles de los métodos heredados
addListener<E>(string | symbol, (args: any[]) => void)
Alias para emitter.on(eventName, listener).
function addListener<E>(eventName: string | symbol, listener: (args: any[]) => void): NodeJSReadableStream
Parámetros
- eventName
-
string | symbol
- listener
-
(args: any[]) => void
Devoluciones
Heredado de NodeJS.ReadableStream.addListener
emit<E>(string | symbol, any[])
Llama sincrónicamente a cada uno de los agentes de escucha registrados para el evento denominado eventName, en el orden en que se registraron, pasando los argumentos proporcionados a cada uno.
Devuelve true si el evento tenía agentes de escucha, false de lo contrario.
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
Parámetros
- eventName
-
string | symbol
- args
-
any[]
Devoluciones
boolean
Heredado de NodeJS.ReadableStream.emit
eventNames()
Devuelve una matriz que enumera los eventos para los que el emisor ha registrado agentes de escucha.
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)[]
Devoluciones
(string | symbol)[]
Heredado de NodeJS.ReadableStream.eventNames
getMaxListeners()
Devuelve el valor máximo actual del agente de escucha para el EventEmitter que se establece mediante emitter.setMaxListeners(n) o los valores predeterminados en events.defaultMaxListeners.
function getMaxListeners(): number
Devoluciones
number
Heredado de NodeJS.ReadableStream.getMaxListeners
isPaused()
function isPaused(): boolean
Devoluciones
boolean
Heredado de NodeJS.ReadableStream.isPaused
listenerCount<E>(string | symbol, (args: any[]) => void)
Devuelve el número de agentes de escucha que escuchan el evento denominado eventName.
Si se proporciona listener, devolverá cuántas veces se encuentra el agente de escucha en la lista de agentes de escucha del evento.
function listenerCount<E>(eventName: string | symbol, listener?: (args: any[]) => void): number
Parámetros
- eventName
-
string | symbol
Nombre del evento que se está escuchando
- listener
-
(args: any[]) => void
Función del controlador de eventos
Devoluciones
number
Heredado de NodeJS.ReadableStream.listenerCount
listeners<E>(string | symbol)
Devuelve una copia de la matriz de agentes de escucha del evento denominado 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[]
Parámetros
- eventName
-
string | symbol
Devoluciones
(args: any[]) => void[]
Heredado de NodeJS.ReadableStream.listeners
off<E>(string | symbol, (args: any[]) => void)
Alias para emitter.removeListener().
function off<E>(eventName: string | symbol, listener: (args: any[]) => void): NodeJSReadableStream
Parámetros
- eventName
-
string | symbol
- listener
-
(args: any[]) => void
Devoluciones
Heredado de NodeJS.ReadableStream.off
on<E>(string | symbol, (args: any[]) => void)
Agrega la función listener al final de la matriz de agentes de escucha para el evento denominado eventName. No se realizan comprobaciones para ver si ya se ha agregado el listener. Varias llamadas que pasan la misma combinación de eventName y listener darán lugar a que se agregue el listener y se llame varias veces.
server.on('connection', (stream) => {
console.log('someone connected!');
});
Devuelve una referencia al EventEmitter, para que las llamadas se puedan encadenar.
De forma predeterminada, los agentes de escucha de eventos se invocan en el orden en que se agregan. El método emitter.prependListener() se puede usar como alternativa para agregar el agente de escucha de eventos al principio de la matriz de agentes de escucha.
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
Parámetros
- eventName
-
string | symbol
Nombre del evento.
- listener
-
(args: any[]) => void
Función de devolución de llamada
Devoluciones
Heredado de NodeJS.ReadableStream.on
once<E>(string | symbol, (args: any[]) => void)
Agrega una funcióneventName, se quita este agente de escucha y, a continuación, se invoca.
server.once('connection', (stream) => {
console.log('Ah, we have our first user!');
});
Devuelve una referencia al EventEmitter, para que las llamadas se puedan encadenar.
De forma predeterminada, los agentes de escucha de eventos se invocan en el orden en que se agregan. El método emitter.prependOnceListener() se puede usar como alternativa para agregar el agente de escucha de eventos al principio de la matriz de agentes de escucha.
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
Parámetros
- eventName
-
string | symbol
Nombre del evento.
- listener
-
(args: any[]) => void
Función de devolución de llamada
Devoluciones
Heredado de NodeJS.ReadableStream.once
pause()
function pause(): NodeJSReadableStream
Devoluciones
Heredado de NodeJS.ReadableStream.pause
pipe<T>(T, { end?: boolean })
function pipe<T>(destination: T, options?: { end?: boolean }): T
Parámetros
- destination
-
T
- options
-
{ end?: boolean }
Devoluciones
T
Heredado de NodeJS.ReadableStream.pipe
prependListener<E>(string | symbol, (args: any[]) => void)
Agrega la función listener al que comienza de la matriz de agentes de escucha para el evento denominado eventName. No se realizan comprobaciones para ver si ya se ha agregado el listener. Varias llamadas que pasan la misma combinación de eventName y listener darán lugar a que se agregue el listener y se llame varias veces.
server.prependListener('connection', (stream) => {
console.log('someone connected!');
});
Devuelve una referencia al EventEmitter, para que las llamadas se puedan encadenar.
function prependListener<E>(eventName: string | symbol, listener: (args: any[]) => void): NodeJSReadableStream
Parámetros
- eventName
-
string | symbol
Nombre del evento.
- listener
-
(args: any[]) => void
Función de devolución de llamada
Devoluciones
Heredado de NodeJS.ReadableStream.prependListener
prependOnceListener<E>(string | symbol, (args: any[]) => void)
Agrega una función deeventName, se quita este agente de escucha y, a continuación, se invoca.
server.prependOnceListener('connection', (stream) => {
console.log('Ah, we have our first user!');
});
Devuelve una referencia al EventEmitter, para que las llamadas se puedan encadenar.
function prependOnceListener<E>(eventName: string | symbol, listener: (args: any[]) => void): NodeJSReadableStream
Parámetros
- eventName
-
string | symbol
Nombre del evento.
- listener
-
(args: any[]) => void
Función de devolución de llamada
Devoluciones
Heredado de NodeJS.ReadableStream.prependOnceListener
rawListeners<E>(string | symbol)
Devuelve una copia de la matriz de agentes de escucha para el evento denominado eventName, incluidos los contenedores (como los creados por .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[]
Parámetros
- eventName
-
string | symbol
Devoluciones
(args: any[]) => void[]
Heredado de NodeJS.ReadableStream.rawListeners
read(number)
function read(size?: number): string | Buffer
Parámetros
- size
-
number
Devoluciones
string | Buffer
Heredado de NodeJS.ReadableStream.read
removeAllListeners<E>(string | symbol)
Quita todos los agentes de escucha o los del eventNameespecificado.
Es un procedimiento incorrecto quitar agentes de escucha agregados en otro lugar del código, especialmente cuando la instancia de EventEmitter se creó mediante algún otro componente o módulo (por ejemplo, sockets o flujos de archivos).
Devuelve una referencia al EventEmitter, para que las llamadas se puedan encadenar.
function removeAllListeners<E>(eventName?: string | symbol): NodeJSReadableStream
Parámetros
- eventName
-
string | symbol
Devoluciones
Heredado de NodeJS.ReadableStream.removeAllListeners
removeListener<E>(string | symbol, (args: any[]) => void)
Quita el listener especificado de la matriz del agente de escucha para el evento denominado eventName.
const callback = (stream) => {
console.log('someone connected!');
};
server.on('connection', callback);
// ...
server.removeListener('connection', callback);
removeListener() quitará, como máximo, una instancia de un agente de escucha de la matriz del agente de escucha. Si se ha agregado varias veces alguna escucha única a la matriz del agente de escucha para el eventNameespecificado, se debe llamar a removeListener() varias veces para quitar cada instancia.
Una vez emitido un evento, se llama a todos los agentes de escucha adjuntos en el momento de emitir en orden. Esto implica que cualquier removeListener()removeAllListeners() llamada tras emitir y antes de que el último oyente termine la ejecución no las eliminará del emit() proceso de ejecución. Los eventos posteriores se comportan según lo previsto.
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
Como los oyentes se gestionan mediante un array interno, llamar a esto cambiará los índices de posición de cualquier oyente registrado tras la eliminación del oyente. Esto no afectará al orden en el que se llama a los agentes de escucha, pero significa que las copias de la matriz del agente de escucha tal y como devuelve el método emitter.listeners() deberán volver a crearse.
Cuando se ha agregado una sola función como controlador varias veces para un solo evento (como en el ejemplo siguiente), removeListener() quitará la instancia agregada más recientemente. En el ejemplo, se quita el agente de escucha once('ping'):
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');
Devuelve una referencia al EventEmitter, para que las llamadas se puedan encadenar.
function removeListener<E>(eventName: string | symbol, listener: (args: any[]) => void): NodeJSReadableStream
Parámetros
- eventName
-
string | symbol
- listener
-
(args: any[]) => void
Devoluciones
Heredado de NodeJS.ReadableStream.removeListener
resume()
function resume(): NodeJSReadableStream
Devoluciones
Heredado de NodeJS.ReadableStream.resume
setEncoding(BufferEncoding)
function setEncoding(encoding: BufferEncoding): NodeJSReadableStream
Parámetros
- encoding
-
BufferEncoding
Devoluciones
Heredado de NodeJS.ReadableStream.setEncoding
setMaxListeners(number)
De forma predeterminada, EventEmitters imprimirán una advertencia si se agregan más de 10 agentes de escucha para un evento determinado. Este es un valor predeterminado útil que ayuda a encontrar fugas de memoria. El método emitter.setMaxListeners() permite modificar el límite para esta instancia de EventEmitter específica. El valor se puede establecer en Infinity (o 0) para indicar un número ilimitado de agentes de escucha.
Devuelve una referencia al EventEmitter, para que las llamadas se puedan encadenar.
function setMaxListeners(n: number): NodeJSReadableStream
Parámetros
- n
-
number
Devoluciones
Heredado de NodeJS.ReadableStream.setMaxListeners
unpipe(WritableStream)
function unpipe(destination?: WritableStream): NodeJSReadableStream
Parámetros
- destination
-
WritableStream
Devoluciones
Heredado de NodeJS.ReadableStream.unpipe
unshift(string | Uint8Array, BufferEncoding)
function unshift(chunk: string | Uint8Array, encoding?: BufferEncoding)
Parámetros
- chunk
-
string | Uint8Array
- encoding
-
BufferEncoding
Heredado de NodeJS.ReadableStream.unshift
wrap(ReadableStream)
function wrap(oldStream: ReadableStream): NodeJSReadableStream
Parámetros
- oldStream
-
ReadableStream
Devoluciones
Heredado de NodeJS.ReadableStream.wrap
[asyncIterator]()
function [asyncIterator](): AsyncIterableIterator<string | Buffer>
Devoluciones
AsyncIterableIterator<string | Buffer>
Heredado de NodeJS.ReadableStream.__@asyncIterator@163
[captureRejectionSymbol](Error, string | symbol, any[])
El Symbol.for('nodejs.rejection') método se llama en caso de que ocurra un rechazo de promesa al emitir un evento y captureRejections está habilitado en el emisor.
Es posible usarlo events.captureRejectionSymbol en lugar de 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[])
Parámetros
- error
-
Error
- event
-
string | symbol
- args
-
any[]
Heredado de NodeJS.ReadableStream.__@captureRejectionSymbol@180