Transport interface
- Extends
-
EventEmitter
Metody
Metody dziedziczone
add |
Alias dla |
emit<K>(string | symbol, Any |
Synchronicznie wywołuje każdy odbiornik zarejestrowany dla zdarzenia o nazwie Zwraca wartość
|
event |
Zwraca tablicę zawierającą listę zdarzeń, dla których emiter zarejestrował odbiorniki. Wartości w tablicy to ciągi lub
|
get |
Zwraca bieżącą wartość maksymalnego |
listener |
Zwraca liczbę odbiorników nasłuchujących dla zdarzenia o nazwie |
listeners<K>(string | symbol) | Zwraca kopię tablicy odbiorników dla zdarzenia o nazwie
|
off<K>(string | symbol, (args: any[]) => void) | Alias dla |
on<K>(string | symbol, (args: any[]) => void) |
Zwraca odwołanie do elementu Domyślnie odbiorniki zdarzeń są wywoływane w kolejności ich dodawania. Metoda
|
once<K>(string | symbol, (args: any[]) => void) | Dodaje funkcję jednorazową
Zwraca odwołanie do elementu Domyślnie odbiorniki zdarzeń są wywoływane w kolejności ich dodawania. Metoda
|
prepend |
Zwraca odwołanie do elementu |
prepend |
Dodaje jednorazową
Zwraca odwołanie do elementu |
raw |
Zwraca kopię tablicy odbiorników dla zdarzenia o nazwie
|
remove |
Usuwa wszystkie odbiorniki lub te z określonej wartości Źle jest usunąć odbiorniki dodane w innym miejscu w kodzie, szczególnie w przypadku utworzenia Zwraca odwołanie do elementu |
remove |
Usuwa określony
Po emisji zdarzenia wszystkie odbiorniki dołączone do niego w momencie emitowania są wywoływane w kolejności. Oznacza to, że wszystkie
Ponieważ odbiorniki są zarządzane przy użyciu tablicy wewnętrznej, wywołanie spowoduje zmianę indeksów pozycji każdego odbiornika zarejestrowanego po usunięciu odbiornika. Nie wpłynie to na kolejność wywoływanych odbiorników, ale oznacza to, że wszystkie kopie tablicy odbiorników zwrócone przez Po dodaniu pojedynczej funkcji jako procedury obsługi wiele razy dla pojedynczego zdarzenia (jak w poniższym przykładzie),
Zwraca odwołanie do elementu |
set |
Domyślnie Zwraca odwołanie do elementu |
[capture |
Szczegóły metody
connect(Callback<Connected>)
function connect(done?: Callback<Connected>)
Parametry
- done
-
Callback<Connected>
disconnect(Callback<Disconnected>)
function disconnect(done: Callback<Disconnected>)
Parametry
- done
-
Callback<Disconnected>
getFeedbackReceiver(Callback<ServiceReceiver>)
function getFeedbackReceiver(done: Callback<ServiceReceiver>)
Parametry
- done
-
Callback<ServiceReceiver>
getFileNotificationReceiver(Callback<ServiceReceiver>)
function getFileNotificationReceiver(done: Callback<ServiceReceiver>)
Parametry
- done
-
Callback<ServiceReceiver>
send(string, Message, Callback<MessageEnqueued>)
function send(deviceId: string, message: Message, done?: Callback<MessageEnqueued>)
Parametry
- deviceId
-
string
- message
-
Message
- done
-
Callback<MessageEnqueued>
Szczegóły metody dziedziczonej
addListener<K>(string | symbol, (args: any[]) => void)
Alias dla emitter.on(eventName, listener)
.
function addListener<K>(eventName: string | symbol, listener: (args: any[]) => void): Transport
Parametry
- eventName
-
string | symbol
- listener
-
(args: any[]) => void
Zwraca
Dziedziczone z EventEmitter.addListener
emit<K>(string | symbol, AnyRest)
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 z nich.
Zwraca wartość true
, jeśli zdarzenie ma 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<K>(eventName: string | symbol, args: AnyRest): boolean
Parametry
- eventName
-
string | symbol
- args
-
AnyRest
Zwraca
boolean
Dziedziczone z EventEmitter.emit
eventNames()
Zwraca tablicę zawierającą listę zdarzeń, dla których emiter zarejestrował odbiorniki. Wartości w tablicy to ciągi lub Symbol
s.
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 EventEmitter.eventNames
getMaxListeners()
Zwraca bieżącą wartość maksymalnego EventEmitter
odbiornika dla wartości , która jest ustawiona domyślnie emitter.setMaxListeners(n)
na defaultMaxListenerswartość .
function getMaxListeners(): number
Zwraca
number
Dziedziczone z EventEmitter.getMaxListeners
listenerCount<K>(string | symbol, Function)
Zwraca liczbę odbiorników nasłuchujących dla zdarzenia o nazwie eventName
.
Jeśli listener
zostanie podana, zwróci liczbę znalezionych odbiorników na liście odbiorników zdarzenia.
function listenerCount<K>(eventName: string | symbol, listener?: Function): number
Parametry
- eventName
-
string | symbol
Nazwa zdarzenia, dla których jest nasłuchiwana
- listener
-
Function
Funkcja obsługi zdarzeń
Zwraca
number
Dziedziczone z EventEmitter.listenerCount
listeners<K>(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<K>(eventName: string | symbol): Function[]
Parametry
- eventName
-
string | symbol
Zwraca
Function[]
Dziedziczone z EventEmitter.listeners
off<K>(string | symbol, (args: any[]) => void)
Alias dla emitter.removeListener()
.
function off<K>(eventName: string | symbol, listener: (args: any[]) => void): Transport
Parametry
- eventName
-
string | symbol
- listener
-
(args: any[]) => void
Zwraca
Dziedziczone z EventEmitter.off
on<K>(string | symbol, (args: any[]) => void)
listener
Dodaje funkcję na końcu tablicy odbiorników dla zdarzenia o nazwie eventName
. Nie są sprawdzane w celu sprawdzenia, czy listener
element został już dodany. Wiele wywołań eventName
przekazujących tę samą kombinację i listener
spowoduje listener
dodanie i wywołanie ich wiele razy.
server.on('connection', (stream) => {
console.log('someone connected!');
});
Zwraca odwołanie do elementu EventEmitter
, aby wywołania mogły być łańcuchowe.
Domyślnie odbiorniki zdarzeń są wywoływane w kolejności ich dodawania. Metoda emitter.prependListener()
może służyć jako alternatywa do dodawania odbiornika 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<K>(eventName: string | symbol, listener: (args: any[]) => void): Transport
Parametry
- eventName
-
string | symbol
Nazwa zdarzenia.
- listener
-
(args: any[]) => void
Funkcja wywołania zwrotnego
Zwraca
Dziedziczone z EventEmitter.on
once<K>(string | symbol, (args: any[]) => void)
Dodaje funkcję jednorazowąlistener
dla zdarzenia o nazwie eventName
. Przy następnym eventName
wyzwoleniu 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 elementu EventEmitter
, aby wywołania mogły być łańcuchowe.
Domyślnie odbiorniki zdarzeń są wywoływane w kolejności ich dodawania. Metoda emitter.prependOnceListener()
może służyć jako alternatywa do dodawania odbiornika 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<K>(eventName: string | symbol, listener: (args: any[]) => void): Transport
Parametry
- eventName
-
string | symbol
Nazwa zdarzenia.
- listener
-
(args: any[]) => void
Funkcja wywołania zwrotnego
Zwraca
Dziedziczone z EventEmitter.once
prependListener<K>(string | symbol, (args: any[]) => void)
listener
Dodaje funkcję na początku tablicy odbiorników dla zdarzenia o nazwie eventName
. Nie są sprawdzane w celu sprawdzenia, czy listener
element został już dodany. Wiele wywołań eventName
przekazujących tę samą kombinację i listener
spowoduje listener
dodanie i wywołanie ich wiele razy.
server.prependListener('connection', (stream) => {
console.log('someone connected!');
});
Zwraca odwołanie do elementu EventEmitter
, aby wywołania mogły być łańcuchowe.
function prependListener<K>(eventName: string | symbol, listener: (args: any[]) => void): Transport
Parametry
- eventName
-
string | symbol
Nazwa zdarzenia.
- listener
-
(args: any[]) => void
Funkcja wywołania zwrotnego
Zwraca
Dziedziczone z EventEmitter.prependListener
prependOnceListener<K>(string | symbol, (args: any[]) => void)
Dodaje jednorazowąlistener
funkcję zdarzenia o nazwie eventName
na początku tablicy odbiorników. Przy następnym eventName
wyzwoleniu 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 elementu EventEmitter
, aby wywołania mogły być łańcuchowe.
function prependOnceListener<K>(eventName: string | symbol, listener: (args: any[]) => void): Transport
Parametry
- eventName
-
string | symbol
Nazwa zdarzenia.
- listener
-
(args: any[]) => void
Funkcja wywołania zwrotnego
Zwraca
Dziedziczone z EventEmitter.prependOnceListener
rawListeners<K>(string | symbol)
Zwraca kopię tablicy odbiorników dla zdarzenia o nazwie eventName
, w tym wszelkie otoki (takie jak te utworzone przez .once()
program ).
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[]
Parametry
- eventName
-
string | symbol
Zwraca
Function[]
Dziedziczone z EventEmitter.rawListeners
removeAllListeners(string | symbol)
Usuwa wszystkie odbiorniki lub te z określonej wartości eventName
.
Źle jest usunąć odbiorniki dodane w innym miejscu w kodzie, szczególnie w przypadku utworzenia EventEmitter
wystąpienia przez inny składnik lub moduł (np. gniazda lub strumienie plików).
Zwraca odwołanie do elementu EventEmitter
, aby wywołania mogły być łańcuchowe.
function removeAllListeners(eventName?: string | symbol): Transport
Parametry
- eventName
-
string | symbol
Zwraca
Dziedziczone z EventEmitter.removeAllListeners
removeListener<K>(string | symbol, (args: any[]) => void)
Usuwa określony listener
element 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()
spowoduje usunięcie co najwyżej jednego wystąpienia odbiornika z tablicy odbiornika. Jeśli którykolwiek odbiornik został dodany wiele razy do tablicy odbiornika dla określonego eventName
elementu , removeListener()
należy wywołać go wiele razy, aby usunąć każde wystąpienie.
Po emisji zdarzenia wszystkie odbiorniki dołączone do niego w momencie emitowania są wywoływane w kolejności. Oznacza to, że wszystkie removeListener()
wywołania lub removeAllListeners()
po emitowaniu i zanim ostatni odbiornik zakończy wykonywanie, nie usunie ich zemit()
postępu. 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ż odbiorniki są zarządzane przy użyciu tablicy wewnętrznej, wywołanie spowoduje zmianę indeksów pozycji każdego odbiornika zarejestrowanego po usunięciu odbiornika. Nie wpłynie to na kolejność wywoływanych odbiorników, ale oznacza to, że wszystkie kopie tablicy odbiorników zwrócone przez emitter.listeners()
metodę będą musiały zostać ponownie utworzony.
Po dodaniu pojedynczej funkcji jako procedury obsługi wiele razy dla pojedynczego zdarzenia (jak w poniższym przykładzie), removeListener()
usunie ostatnio dodane wystąpienie. W przykładzie once('ping')
odbiornik 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 elementu EventEmitter
, aby wywołania mogły być łańcuchowe.
function removeListener<K>(eventName: string | symbol, listener: (args: any[]) => void): Transport
Parametry
- eventName
-
string | symbol
- listener
-
(args: any[]) => void
Zwraca
Dziedziczone z EventEmitter.removeListener
setMaxListeners(number)
Domyślnie EventEmitter
funkcja s wyświetli ostrzeżenie, jeśli dla określonego zdarzenia zostanie dodanych więcej niż 10
odbiorniki. Jest to przydatna wartość domyślna, która pomaga znaleźć przecieki pamięci. Metoda emitter.setMaxListeners()
umożliwia zmodyfikowanie limitu dla tego konkretnego EventEmitter
wystąpienia. Wartość można ustawić na Infinity
(lub 0
), aby wskazać nieograniczoną liczbę odbiorników.
Zwraca odwołanie do elementu EventEmitter
, aby wywołania mogły być łańcuchowe.
function setMaxListeners(n: number): Transport
Parametry
- n
-
number
Zwraca
Dziedziczone z EventEmitter.setMaxListeners
[captureRejectionSymbol]<K>(Error, string | symbol, AnyRest)
function [captureRejectionSymbol]<K>(error: Error, event: string | symbol, args: AnyRest)
Parametry
- error
-
Error
- event
-
string | symbol
- args
-
AnyRest
Dziedziczone z EventEmitter.__@captureRejectionSymbol@115