NodeJSReadableStream interface
Um fluxo Node.js legível que também tem um destroy método.
- Extends
-
ReadableStream
Propriedades Herdadas
| readable |
Métodos
| destroy(Error) | Destrua o fluxo. Opcionalmente, emita um evento 'error' e emita um evento 'close' (a menos que emitClose esteja definido como false). Após essa chamada, os recursos internos serão liberados. |
Métodos Herdados
| add |
Alias para |
| emit<E>(string | symbol, any[]) | Chama de forma síncrona cada um dos ouvintes registrados para o evento chamado Retorna
|
| event |
Retorna uma matriz listando os eventos para os quais o emissor registrou ouvintes.
|
| get |
Retorna o valor máximo de ouvinte atual para o |
| is |
|
| listener |
Retorna o número de ouvintes ouvindo o evento chamado |
| listeners<E>(string | symbol) | Retorna uma cópia da matriz de ouvintes para o evento chamado
|
| off<E>(string | symbol, (args: any[]) => void) | Alias para |
| on<E>(string | symbol, (args: any[]) => void) | Adiciona a função
Retorna uma referência ao Por padrão, os ouvintes de eventos são invocados na ordem em que são adicionados. O método
|
| once<E>(string | symbol, (args: any[]) => void) | Adiciona uma função
Retorna uma referência ao Por padrão, os ouvintes de eventos são invocados na ordem em que são adicionados. O método
|
| pause() | |
| pipe<T>(T, { end?: boolean }) | |
| prepend |
Adiciona a função
Retorna uma referência ao |
| prepend |
Adiciona uma
Retorna uma referência ao |
| raw |
Retorna uma cópia da matriz de ouvintes para o evento chamado
|
| read(number) | |
| remove |
Remove todos os ouvintes ou os do É uma má prática remover ouvintes adicionados em outro lugar no código, particularmente quando a instância Retorna uma referência ao |
| remove |
Remove o
Uma vez que um evento é emitido, todos os ouvintes ligados a ele no momento da emissão são chamados em ordem. Isto implica que quaisquer
Como os ouvintes são geridos através de um array interno, chamar isto altera os índices de posição de qualquer ouvinte registado após a remoção do ouvinte. Isso não afetará a ordem na qual os ouvintes são chamados, mas significa que todas as cópias da matriz de ouvintes retornadas pelo método Quando uma única função tiver sido adicionada como manipulador várias vezes para um único evento (como no exemplo abaixo),
Retorna uma referência ao |
| resume() | |
| set |
|
| set |
Por padrão Retorna uma referência ao |
| unpipe(Writable |
|
| unshift(string | Uint8Array, Buffer |
|
| wrap(Readable |
|
| [async |
|
| [capture |
O
|
Detalhes da Propriedade Herdada
readable
readable: boolean
Valor de Propriedade
boolean
Herdado de NodeJS.ReadableStream.readable
Detalhes de Método
destroy(Error)
Destrua o fluxo. Opcionalmente, emita um evento 'error' e emita um evento 'close' (a menos que emitClose esteja definido como false). Após essa chamada, os recursos internos serão liberados.
function destroy(error?: Error)
Parâmetros
- error
-
Error
Detalhes do Método Herdado
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
Devoluções
Herdado de NodeJS.ReadableStream.addListener
emit<E>(string | symbol, any[])
Chama de forma síncrona cada um dos ouvintes registrados para o evento chamado eventName, na ordem em que foram registrados, passando os argumentos fornecidos para cada um.
Retorna true se o evento teve ouvintes false caso contrário.
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[]
Devoluções
boolean
Herdado de NodeJS.ReadableStream.emit
eventNames()
Retorna uma matriz listando os eventos para os quais o emissor registrou ouvintes.
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)[]
Devoluções
(string | symbol)[]
Herdado de NodeJS.ReadableStream.eventNames
getMaxListeners()
Retorna o valor máximo de ouvinte atual para o EventEmitter que é definido por emitter.setMaxListeners(n) ou padrão como events.defaultMaxListeners.
function getMaxListeners(): number
Devoluções
number
Herdado de NodeJS.ReadableStream.getMaxListeners
isPaused()
function isPaused(): boolean
Devoluções
boolean
Herdado de NodeJS.ReadableStream.isPaused
listenerCount<E>(string | symbol, (args: any[]) => void)
Retorna o número de ouvintes ouvindo o evento chamado eventName.
Se listener for fornecido, ele retornará quantas vezes o ouvinte é encontrado na lista dos ouvintes do evento.
function listenerCount<E>(eventName: string | symbol, listener?: (args: any[]) => void): number
Parâmetros
- eventName
-
string | symbol
O nome do evento que está sendo escutado
- listener
-
(args: any[]) => void
A função de manipulador de eventos
Devoluções
number
Herdado de NodeJS.ReadableStream.listenerCount
listeners<E>(string | symbol)
Retorna uma cópia da matriz de ouvintes para o evento chamado 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
Devoluções
(args: any[]) => void[]
Herdado 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
Devoluções
Herdado de NodeJS.ReadableStream.off
on<E>(string | symbol, (args: any[]) => void)
Adiciona a função listener ao final da matriz de ouvintes do evento chamado eventName. Nenhuma verificação é feita para ver se o listener já foi adicionado. Várias chamadas que passam a mesma combinação de eventName e listener resultarão no listener sendo adicionado e chamado várias vezes.
server.on('connection', (stream) => {
console.log('someone connected!');
});
Retorna uma referência ao EventEmitter, para que as chamadas possam ser encadeadas.
Por padrão, os ouvintes de eventos são invocados na ordem em que são adicionados. O método emitter.prependListener() pode ser usado como uma alternativa para adicionar o ouvinte de eventos ao início da matriz de ouvintes.
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
O nome do evento.
- listener
-
(args: any[]) => void
A função de retorno de chamada
Devoluções
Herdado de NodeJS.ReadableStream.on
once<E>(string | symbol, (args: any[]) => void)
Adiciona uma funçãolistener única para o evento chamado eventName. Na próxima vez que eventName for acionado, esse ouvinte será removido e, em seguida, invocado.
server.once('connection', (stream) => {
console.log('Ah, we have our first user!');
});
Retorna uma referência ao EventEmitter, para que as chamadas possam ser encadeadas.
Por padrão, os ouvintes de eventos são invocados na ordem em que são adicionados. O método emitter.prependOnceListener() pode ser usado como uma alternativa para adicionar o ouvinte de eventos ao início da matriz de ouvintes.
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
O nome do evento.
- listener
-
(args: any[]) => void
A função de retorno de chamada
Devoluções
Herdado de NodeJS.ReadableStream.once
pause()
function pause(): NodeJSReadableStream
Devoluções
Herdado 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 }
Devoluções
T
Herdado de NodeJS.ReadableStream.pipe
prependListener<E>(string | symbol, (args: any[]) => void)
Adiciona a função listener já foi adicionado. Várias chamadas que passam a mesma combinação de eventName e listener resultarão no listener sendo adicionado e chamado várias vezes.
server.prependListener('connection', (stream) => {
console.log('someone connected!');
});
Retorna uma referência ao EventEmitter, para que as chamadas possam ser encadeadas.
function prependListener<E>(eventName: string | symbol, listener: (args: any[]) => void): NodeJSReadableStream
Parâmetros
- eventName
-
string | symbol
O nome do evento.
- listener
-
(args: any[]) => void
A função de retorno de chamada
Devoluções
Herdado de NodeJS.ReadableStream.prependListener
prependOnceListener<E>(string | symbol, (args: any[]) => void)
Adiciona uma eventName for acionado, esse ouvinte será removido e, em seguida, invocado.
server.prependOnceListener('connection', (stream) => {
console.log('Ah, we have our first user!');
});
Retorna uma referência ao EventEmitter, para que as chamadas possam ser encadeadas.
function prependOnceListener<E>(eventName: string | symbol, listener: (args: any[]) => void): NodeJSReadableStream
Parâmetros
- eventName
-
string | symbol
O nome do evento.
- listener
-
(args: any[]) => void
A função de retorno de chamada
Devoluções
Herdado de NodeJS.ReadableStream.prependOnceListener
rawListeners<E>(string | symbol)
Retorna uma cópia da matriz de ouvintes para o evento chamado eventName, incluindo quaisquer wrappers (como os criados 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
Devoluções
(args: any[]) => void[]
Herdado de NodeJS.ReadableStream.rawListeners
read(number)
function read(size?: number): string | Buffer
Parâmetros
- size
-
number
Devoluções
string | Buffer
Herdado de NodeJS.ReadableStream.read
removeAllListeners<E>(string | symbol)
Remove todos os ouvintes ou os do eventNameespecificado.
É uma má prática remover ouvintes adicionados em outro lugar no código, particularmente quando a instância EventEmitter foi criada por algum outro componente ou módulo (por exemplo, soquetes ou fluxos de arquivos).
Retorna uma referência ao EventEmitter, para que as chamadas possam ser encadeadas.
function removeAllListeners<E>(eventName?: string | symbol): NodeJSReadableStream
Parâmetros
- eventName
-
string | symbol
Devoluções
Herdado de NodeJS.ReadableStream.removeAllListeners
removeListener<E>(string | symbol, (args: any[]) => void)
Remove o listener especificado da matriz de ouvinte do evento chamado eventName.
const callback = (stream) => {
console.log('someone connected!');
};
server.on('connection', callback);
// ...
server.removeListener('connection', callback);
removeListener() removerá, no máximo, uma instância de um ouvinte da matriz do ouvinte. Se qualquer ouvinte tiver sido adicionado várias vezes à matriz de ouvinte para o eventNameespecificado, removeListener() deverá ser chamado várias vezes para remover cada instância.
Uma vez que um evento é emitido, todos os ouvintes ligados a ele no momento da emissão são chamados em ordem. Isto implica que quaisquer removeListener() chamadas removeAllListeners()de ou após a emissão e antes do último ouvinte terminar a execução não as removerá do emit() processo em andamento. Os acontecimentos subsequentes comportam-se como esperado.
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 os ouvintes são geridos através de um array interno, chamar isto altera os índices de posição de qualquer ouvinte registado após a remoção do ouvinte. Isso não afetará a ordem na qual os ouvintes são chamados, mas significa que todas as cópias da matriz de ouvintes retornadas pelo método emitter.listeners() precisarão ser recriadas.
Quando uma única função tiver sido adicionada como manipulador várias vezes para um único evento (como no exemplo abaixo), removeListener() removerá a instância adicionada mais recentemente. No exemplo, o ouvinte once('ping') é removido:
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');
Retorna uma referência ao EventEmitter, para que as chamadas possam ser encadeadas.
function removeListener<E>(eventName: string | symbol, listener: (args: any[]) => void): NodeJSReadableStream
Parâmetros
- eventName
-
string | symbol
- listener
-
(args: any[]) => void
Devoluções
Herdado de NodeJS.ReadableStream.removeListener
resume()
function resume(): NodeJSReadableStream
Devoluções
Herdado de NodeJS.ReadableStream.resume
setEncoding(BufferEncoding)
function setEncoding(encoding: BufferEncoding): NodeJSReadableStream
Parâmetros
- encoding
-
BufferEncoding
Devoluções
Herdado de NodeJS.ReadableStream.setEncoding
setMaxListeners(number)
Por padrãoEventEmitters imprimirá um aviso se mais de 10 ouvintes forem adicionados para um evento específico. Este é um padrão útil que ajuda a encontrar vazamentos de memória. O método emitter.setMaxListeners() permite que o limite seja modificado para esta instância EventEmitter específica. O valor pode ser definido como Infinity (ou 0) para indicar um número ilimitado de ouvintes.
Retorna uma referência ao EventEmitter, para que as chamadas possam ser encadeadas.
function setMaxListeners(n: number): NodeJSReadableStream
Parâmetros
- n
-
number
Devoluções
Herdado de NodeJS.ReadableStream.setMaxListeners
unpipe(WritableStream)
function unpipe(destination?: WritableStream): NodeJSReadableStream
Parâmetros
- destination
-
WritableStream
Devoluções
Herdado de NodeJS.ReadableStream.unpipe
unshift(string | Uint8Array, BufferEncoding)
function unshift(chunk: string | Uint8Array, encoding?: BufferEncoding)
Parâmetros
- chunk
-
string | Uint8Array
- encoding
-
BufferEncoding
Herdado de NodeJS.ReadableStream.unshift
wrap(ReadableStream)
function wrap(oldStream: ReadableStream): NodeJSReadableStream
Parâmetros
- oldStream
-
ReadableStream
Devoluções
Herdado de NodeJS.ReadableStream.wrap
[asyncIterator]()
function [asyncIterator](): AsyncIterableIterator<string | Buffer>
Devoluções
AsyncIterableIterator<string | Buffer>
Herdado de NodeJS.ReadableStream.__@asyncIterator@163
[captureRejectionSymbol](Error, string | symbol, any[])
O Symbol.for('nodejs.rejection') método é chamado caso ocorra uma rejeição de promessa ao emitir um evento e captureRejections está ativado no emissor.
É possível usar events.captureRejectionSymbol em vez 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[]
Herdado de NodeJS.ReadableStream.__@captureRejectionSymbol@180