ServiceReceiver interface
- Extends
-
Receiver
Metódusok
| abandon(Message, Callback<Message |
|
| complete(Message, Callback<Message |
|
| reject(Message, Callback<Message |
Örökölt metódusok
| add |
Alias a következőhöz |
| emit<E>(string | symbol, any[]) | Szinkron módon meghívja a
|
| event |
Egy tömböt ad vissza, amely felsorolja azokat az eseményeket, amelyekhez az emitter regisztrált figyelőket.
|
| get |
A |
| listener |
A |
| listeners<E>(string | symbol) | A
|
| off<E>(string | symbol, (args: any[]) => void) | Alias a következőhöz |
| on("error |
|
| on("message", (msg: Message) => void) | |
| on(string, Function) | |
| once<E>(string | symbol, (args: any[]) => void) | Hozzáad egy egyszeri
A Alapértelmezés szerint az eseményfigyelők a hozzáadásuk sorrendjében lesznek meghívva. A
|
| prepend |
Hozzáadja a
A |
| prepend |
Hozzáad egy
A |
| raw |
Visszaadja a
|
| remove |
Eltávolítja az összes figyelőt vagy a megadott Helytelen gyakorlat eltávolítani a kód más részeiben hozzáadott figyelőket, különösen akkor, ha a A |
| remove |
Eltávolítja a megadott
Ha egy eseményt bocsát ki, a rendszer sorrendben meghívja a kibocsátáskor az ahhoz csatolt összes figyelőt. Ez azt jelenti, hogy
Mivel a hallgatókat belső tömbben kezelik, ennek meghívása megváltoztatja bármely hallgató pozícióindexét , amelyet a hallgató eltávolítása után regisztrálnak. Ez nem befolyásolja a figyelők meghívásának sorrendjét, de ez azt jelenti, hogy a figyelőtömbnek az Ha egyetlen függvényt többször adtak hozzá kezelőként egyetlen eseményhez (az alábbi példához hasonlóan),
A |
| set |
Alapértelmezés szerint A |
| [capture |
A
|
Metódus adatai
abandon(Message, Callback<MessageAbandoned>)
function abandon(message: Message, done?: Callback<MessageAbandoned>)
Paraméterek
- message
-
Message
- done
-
Callback<MessageAbandoned>
complete(Message, Callback<MessageCompleted>)
function complete(message: Message, done?: Callback<MessageCompleted>)
Paraméterek
- message
-
Message
- done
-
Callback<MessageCompleted>
reject(Message, Callback<MessageRejected>)
function reject(message: Message, done?: Callback<MessageRejected>)
Paraméterek
- message
-
Message
- done
-
Callback<MessageRejected>
Örökölt metódus részletei
addListener<E>(string | symbol, (args: any[]) => void)
Alias a következőhöz emitter.on(eventName, listener): .
function addListener<E>(eventName: string | symbol, listener: (args: any[]) => void): ServiceReceiver
Paraméterek
- eventName
-
string | symbol
- listener
-
(args: any[]) => void
Válaszok
Örökölt Receiver.addListener
emit<E>(string | symbol, any[])
Szinkron módon meghívja a eventNamenevű eseményre regisztrált összes figyelőt, a regisztráció sorrendjében, és átadja a megadott argumentumokat mindegyiknek.
true ad vissza, ha az esemény figyelői voltak, false ellenkező esetben.
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
Paraméterek
- eventName
-
string | symbol
- args
-
any[]
Válaszok
boolean
örökölt Receiver.emit
eventNames()
Egy tömböt ad vissza, amely felsorolja azokat az eseményeket, amelyekhez az emitter regisztrált figyelőket.
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)[]
Válaszok
(string | symbol)[]
Receiver.eventNames örökölte
getMaxListeners()
A EventEmitter aktuális maximális figyelőértékét adja vissza, amelyet emitter.setMaxListeners(n) vagy alapértelmezés szerint events.defaultMaxListenersértékre állít be.
function getMaxListeners(): number
Válaszok
number
örökölt Receiver.getMaxListeners
listenerCount<E>(string | symbol, (args: any[]) => void)
A eventNamenevű eseményt figyelő figyelők számát adja vissza.
Ha listener van megadva, az visszaadja, hogy hányszor található a figyelő az esemény figyelőinek listájában.
function listenerCount<E>(eventName: string | symbol, listener?: (args: any[]) => void): number
Paraméterek
- eventName
-
string | symbol
A figyelt esemény neve
- listener
-
(args: any[]) => void
Az eseménykezelő függvény
Válaszok
number
Örökölt Receiver.listenerCount
listeners<E>(string | symbol)
A eventNamenevű esemény figyelőinek tömbjének másolatát adja vissza.
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[]
Paraméterek
- eventName
-
string | symbol
Válaszok
(args: any[]) => void[]
Örökölt Receiver.listeners
off<E>(string | symbol, (args: any[]) => void)
Alias a következőhöz emitter.removeListener(): .
function off<E>(eventName: string | symbol, listener: (args: any[]) => void): ServiceReceiver
Paraméterek
- eventName
-
string | symbol
- listener
-
(args: any[]) => void
Válaszok
Örökölt Receiver.off
on("errorReceived", (err: Error) => void)
function on(type: "errorReceived", func: (err: Error) => void): ServiceReceiver
Paraméterek
- type
-
"errorReceived"
- func
-
(err: Error) => void
Válaszok
Örökölt Receiver.on
on("message", (msg: Message) => void)
function on(type: "message", func: (msg: Message) => void): ServiceReceiver
Paraméterek
- type
-
"message"
- func
-
(msg: Message) => void
Válaszok
Örökölt Receiver.on
on(string, Function)
function on(type: string, func: Function): ServiceReceiver
Paraméterek
- type
-
string
- func
-
Function
Válaszok
Örökölt Receiver.on
once<E>(string | symbol, (args: any[]) => void)
Hozzáad egy egyszerilistener függvényt a eventNamenevű eseményhez. A következő eventName aktiválásakor a figyelő el lesz távolítva, majd meghívódik.
server.once('connection', (stream) => {
console.log('Ah, we have our first user!');
});
A EventEmittermutató hivatkozást ad vissza, hogy a hívások láncoltak legyenek.
Alapértelmezés szerint az eseményfigyelők a hozzáadásuk sorrendjében lesznek meghívva. A emitter.prependOnceListener() metódus alternatívaként használható az eseményfigyelő hozzáadásához a figyelőtömb elejéhez.
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): ServiceReceiver
Paraméterek
- eventName
-
string | symbol
Az esemény neve.
- listener
-
(args: any[]) => void
A visszahívási függvény
Válaszok
örökölt Receiver.once
prependListener<E>(string | symbol, (args: any[]) => void)
Hozzáadja a listener már hozzáadták-e. A eventName és a listener azonos kombinációját átadó hívások több alkalommal is hozzáadják és meghívják a listener.
server.prependListener('connection', (stream) => {
console.log('someone connected!');
});
A EventEmittermutató hivatkozást ad vissza, hogy a hívások láncoltak legyenek.
function prependListener<E>(eventName: string | symbol, listener: (args: any[]) => void): ServiceReceiver
Paraméterek
- eventName
-
string | symbol
Az esemény neve.
- listener
-
(args: any[]) => void
A visszahívási függvény
Válaszok
Örökölt Receiver.prependListener
prependOnceListener<E>(string | symbol, (args: any[]) => void)
Hozzáad egy eventName aktiválásakor a figyelő el lesz távolítva, majd meghívódik.
server.prependOnceListener('connection', (stream) => {
console.log('Ah, we have our first user!');
});
A EventEmittermutató hivatkozást ad vissza, hogy a hívások láncoltak legyenek.
function prependOnceListener<E>(eventName: string | symbol, listener: (args: any[]) => void): ServiceReceiver
Paraméterek
- eventName
-
string | symbol
Az esemény neve.
- listener
-
(args: any[]) => void
A visszahívási függvény
Válaszok
Örökölt Receiver.prependOnceListener
rawListeners<E>(string | symbol)
Visszaadja a eventNamenevű esemény figyelőinek tömbjének másolatát, beleértve a burkolókat is (például az .once()által létrehozottakat).
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[]
Paraméterek
- eventName
-
string | symbol
Válaszok
(args: any[]) => void[]
Receiver.rawListeners örökölte
removeAllListeners<E>(string | symbol)
Eltávolítja az összes figyelőt vagy a megadott eventName.
Helytelen gyakorlat eltávolítani a kód más részeiben hozzáadott figyelőket, különösen akkor, ha a EventEmitter-példányt más összetevő vagy modul hozta létre (például szoftvercsatornák vagy fájlstreamek).
A EventEmittermutató hivatkozást ad vissza, hogy a hívások láncoltak legyenek.
function removeAllListeners<E>(eventName?: string | symbol): ServiceReceiver
Paraméterek
- eventName
-
string | symbol
Válaszok
Örökölt Receiver.removeAllListeners
removeListener<E>(string | symbol, (args: any[]) => void)
Eltávolítja a megadott listener a eventNamenevű esemény figyelőtömbéből.
const callback = (stream) => {
console.log('someone connected!');
};
server.on('connection', callback);
// ...
server.removeListener('connection', callback);
removeListener() legfeljebb egy figyelőpéldányt távolít el a figyelőtömbből. Ha a megadott eventNameegyetlen figyelőt többször is hozzáadtak a figyelőtömbhöz, akkor az egyes példányok eltávolításához removeListener() többször kell meghívni.
Ha egy eseményt bocsát ki, a rendszer sorrendben meghívja a kibocsátáskor az ahhoz csatolt összes figyelőt. Ez azt jelenti, hogy removeListener()removeAllListeners() a hívások a kibocsátás után, mielőtt az utolsó hallgató befejezi a végrehajtást, nem távolítják el a emit() folyamatból. A későbbi események a várt módon viselkednek.
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
Mivel a hallgatókat belső tömbben kezelik, ennek meghívása megváltoztatja bármely hallgató pozícióindexét , amelyet a hallgató eltávolítása után regisztrálnak. Ez nem befolyásolja a figyelők meghívásának sorrendjét, de ez azt jelenti, hogy a figyelőtömbnek az emitter.listeners() metódus által visszaadott másolatait újra létre kell hozni.
Ha egyetlen függvényt többször adtak hozzá kezelőként egyetlen eseményhez (az alábbi példához hasonlóan), removeListener() eltávolítja a legutóbb hozzáadott példányt. A példában a once('ping') figyelő el lesz távolítva:
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 EventEmittermutató hivatkozást ad vissza, hogy a hívások láncoltak legyenek.
function removeListener<E>(eventName: string | symbol, listener: (args: any[]) => void): ServiceReceiver
Paraméterek
- eventName
-
string | symbol
- listener
-
(args: any[]) => void
Válaszok
Örökölt Receiver.removeListener
setMaxListeners(number)
Alapértelmezés szerint EventEmitters figyelmeztetést jelenít meg, ha egy adott eseményhez több mint 10 figyelő van hozzáadva. Ez egy hasznos alapértelmezett beállítás, amely segít megtalálni a memóriavesztést. A emitter.setMaxListeners() metódus lehetővé teszi a korlát módosítását ehhez az adott EventEmitter példányhoz. Az érték beállítható Infinity (vagy 0) értékre, hogy korlátlan számú figyelőt jelöljön.
A EventEmittermutató hivatkozást ad vissza, hogy a hívások láncoltak legyenek.
function setMaxListeners(n: number): ServiceReceiver
Paraméterek
- n
-
number
Válaszok
Örökölt Receiver.setMaxListeners
[captureRejectionSymbol](Error, string | symbol, any[])
A Symbol.for('nodejs.rejection') módszert akkor hívják el, ha ígéretelutasítás történik esemény kibocsátásakor, és captureRejections az emitterben engedélyezett.
Lehetséges a events.captureRejectionSymbolSymbol.for('nodejs.rejection')helyett használni.
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[])
Paraméterek
- error
-
Error
- event
-
string | symbol
- args
-
any[]
Örökölt Receiver.__@captureRejectionSymbol@88