انتقل إلى المحتوى

node:events

⁦EventEmitter⁩ المتوافق مع ⁦Node⁩ ومساعدات الأحداث.

في هذه الصفحة
Open in ChatGPTOpen in Claude
import { EventEmitter } from "node:events";

const events = new EventEmitter();
events.once("ready", (value) => console.log(value));
events.emit("ready", 42);

يشمل السلوك المدعوم استدعاءات المستمعين المتزامنة المرتّبة، والمستمعين لمرة واحدة، وإزالة المستمعين، وإشعارات ⁦newListener⁩ و⁦removeListener⁩، وتحذيرات الحد الأقصى للمستمعين، ورمي حدث ⁦error⁩ غير المعالَج.

تتضمن الوحدة:

  • ⁦EventEmitter⁩ و⁦once⁩ و⁦on⁩ و⁦listenerCount⁩
  • ⁦getEventListeners⁩ و⁦getMaxListeners⁩ و⁦setMaxListeners⁩
  • ⁦addAbortListener⁩ و⁦errorMonitor⁩ و⁦captureRejectionSymbol⁩
  • ⁦EventEmitterAsyncResource⁩

ترفض الدالة المصدَّرة ⁦once(emitter, name, { signal })⁩ بـ ⁦AbortError⁩ عندما تُلغى الإشارة، حتى بعد إنشاء ⁦Promise⁩.

مع خيار المُنشئ ⁦captureRejections⁩، يُعاد توجيه ⁦Promise⁩ المرفوض من مستمع غير متزامن إلى حدث ⁦error⁩ في المُرسِل.

راجع توثيق ⁦events⁩ في ⁦Node.js⁩ لتواقيع التوابع القياسية.

Reference

Status: Full · 34 of 38 suite tests pass (89.5%) · since 1.1.0

Exports

ExportKindStatusNotes
EventEmitterclassFulladdListener(), on(), once(), prependListener(), prependOnceListener(), removeListener(), off(), removeAllListeners(), emit(), listenerCount(), listeners(), rawListeners(), eventNames(), setMaxListeners(), getMaxListeners(), EventEmitter.defaultMaxListeners, EventEmitter.once(), EventEmitter.listenerCount()

Tests: node-api node:events: 34 pass, 3 fail, 1 error, 6 skipped. Failing: test-event-capture-rejections.js, test-eventemitter-asyncresource.js, test-events-once.js, test-eventsource.js.

هل كانت هذه الصفحة مفيدة؟