Встроенный объект объекта

ObjectEventEmitter

EventEmitter — это объект, запускающий события, который можно использовать для создания шаблона наблюдателя. Все объекты, поддерживающие запуск событий, наследуются от этого объекта.

Когда событие инициируется, все прослушиватели, связанные с этим событием, вызываются асинхронно. Это также позволяет нам создавать код, который легко настраивается и гибок.

Обычно используемые функции включают: addListener/on, Once, RemoveListener/Off, RemoveAllListeners и Emit.

Вот пример кода:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
var fs = require('fs'); var EventEmitter = require('events'); var event = new EventEmitter(); event.on('read_file', function(filename) { fs.readFile(filename, 'utf8', function(err, data) { if (err) { event.emit('error', err); return; } event.emit('show_content', data); }); }); event.on('error', function(err) { console.log(`Error ${err}`); }); event.on('show_content', function(content) { console.log(content); }); event.emit('read_file', 'test.txt');

event.emit('read_file', 'test.txt')При запуске приведенного выше примера кода событие экземпляра источника событий сначала прослушивает событие read_file, а затем запускает операцию чтения файла при срабатывании события ( ). При успешном чтении будет вызвано событие «show_content». В это время будет выполнена функция, которая прослушивала событие «show_content», и отобразится содержимое файла. Если при чтении файла возникает ошибка, запускается событие «ошибка» и обрабатывается сбой операции.

Эта модель имеет большие преимущества в бизнес-сценариях, связанных с асинхронными операциями.

отношения наследства

%0 object object toString() toJSON() EventEmitter EventEmitter new EventEmitter() EventEmitter defaultMaxListeners on() addListener() prependListener() once() prependOnceListener() off() removeListener() removeAllListeners() setMaxListeners() getMaxListeners() listeners() listenerCount() eventNames() emit() object->EventEmitter ChildProcess ChildProcess EventEmitter->ChildProcess DgramSocket DgramSocket EventEmitter->DgramSocket FSWatcher FSWatcher EventEmitter->FSWatcher LruCache LruCache EventEmitter->LruCache Service Service EventEmitter->Service StatsWatcher StatsWatcher EventEmitter->StatsWatcher WebSocket WebSocket EventEmitter->WebSocket WebView WebView EventEmitter->WebView Worker Worker EventEmitter->Worker

Конструктор

EventEmitter

Конструктор

1
new EventEmitter();

объект

объект триггера события

1
EventEmitter new EventEmitter;

статические свойства

defaultMaxListeners

Целое число, глобальное максимальное количество слушателей по умолчанию.

1
static Integer EventEmitter.defaultMaxListeners;

функция-член

on

Привязать обработчик событий к объекту

1 2
Object EventEmitter.on(String ev, Function func);

Параметры звонка:

  • ev: строка, указывает название события.
  • func: Функция, укажите функцию обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

Привязать обработчик событий к объекту

1
Object EventEmitter.on(Object map);

Параметры звонка:

  • map: Объект, определяет связь сопоставления событий, имя атрибута объекта будет использоваться в качестве имени события, а значение атрибута будет использоваться в качестве функции обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

addListener

Привязать обработчик событий к объекту

1 2
Object EventEmitter.addListener(String ev, Function func);

Параметры звонка:

  • ev: строка, указывает название события.
  • func: Функция, укажите функцию обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

Привязать обработчик событий к объекту

1
Object EventEmitter.addListener(Object map);

Параметры звонка:

  • map: Объект, определяет связь сопоставления событий, имя атрибута объекта будет использоваться в качестве имени события, а значение атрибута будет использоваться в качестве функции обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

prependListener

Привяжите обработчик событий к источнику объекта

1 2
Object EventEmitter.prependListener(String ev, Function func);

Параметры звонка:

  • ev: строка, указывает название события.
  • func: Функция, укажите функцию обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

Привяжите обработчик событий к источнику объекта

1
Object EventEmitter.prependListener(Object map);

Параметры звонка:

  • map: Объект, определяет связь сопоставления событий, имя атрибута объекта будет использоваться в качестве имени события, а значение атрибута будет использоваться в качестве функции обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

once

Привяжите к объекту одноразовый обработчик событий. Одноразовый обработчик будет срабатывать только один раз.

1 2
Object EventEmitter.once(String ev, Function func);

Параметры звонка:

  • ev: строка, указывает название события.
  • func: Функция, укажите функцию обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

Привяжите к объекту одноразовый обработчик событий. Одноразовый обработчик будет срабатывать только один раз.

1
Object EventEmitter.once(Object map);

Параметры звонка:

  • map: Объект, определяет связь сопоставления событий, имя атрибута объекта будет использоваться в качестве имени события, а значение атрибута будет использоваться в качестве функции обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

prependOnceListener

Привяжите обработчик событий к источнику объекта

1 2
Object EventEmitter.prependOnceListener(String ev, Function func);

Параметры звонка:

  • ev: строка, указывает название события.
  • func: Функция, укажите функцию обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

Привяжите обработчик событий к источнику объекта

1
Object EventEmitter.prependOnceListener(Object map);

Параметры звонка:

  • map: Объект, определяет связь сопоставления событий, имя атрибута объекта будет использоваться в качестве имени события, а значение атрибута будет использоваться в качестве функции обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

off

Отменить назначение функции из очереди обработки объекта

1 2
Object EventEmitter.off(String ev, Function func);

Параметры звонка:

  • ev: строка, указывает название события.
  • func: Функция, укажите функцию обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

Отменить все функции в очереди обработки объекта

1
Object EventEmitter.off(String ev);

Параметры звонка:

  • ev: строка, указывает название события.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

Отменить назначение функции из очереди обработки объекта

1
Object EventEmitter.off(Object map);

Параметры звонка:

  • map: Объект, определяет связь сопоставления событий, имя атрибута объекта используется в качестве имени события, а значение атрибута используется в качестве функции обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

removeListener

Отменить назначение функции из очереди обработки объекта

1 2
Object EventEmitter.removeListener(String ev, Function func);

Параметры звонка:

  • ev: строка, указывает название события.
  • func: Функция, укажите функцию обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

Отменить все функции в очереди обработки объекта

1
Object EventEmitter.removeListener(String ev);

Параметры звонка:

  • ev: строка, указывает название события.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

Отменить назначение функции из очереди обработки объекта

1
Object EventEmitter.removeListener(Object map);

Параметры звонка:

  • map: Объект, определяет связь сопоставления событий, имя атрибута объекта используется в качестве имени события, а значение атрибута используется в качестве функции обработки событий.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

removeAllListeners

Отменяет все прослушиватели всех событий из очереди обработки объекта. Если событие указано, удаляются все прослушиватели указанного события.

1
Object EventEmitter.removeAllListeners(String ev);

Параметры звонка:

  • ev: строка, указывает название события.

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

Отменяет все прослушиватели всех событий из очереди обработки объекта. Если событие указано, удаляются все прослушиватели указанного события.

1
Object EventEmitter.removeAllListeners(Array evs = []);

Параметры звонка:

  • evs: Массив, укажите название события

Результаты возврата:

  • Object, возвращает сам объект события для облегчения цепных вызовов

setMaxListeners

Ограничение количества прослушивателей по умолчанию, только для совместимости.

1
EventEmitter.setMaxListeners(Integer n);

Параметры звонка:

  • n: Целое число, укажите количество событий

getMaxListeners

Получает предельное количество прослушивателей по умолчанию, только для совместимости.

1
Integer EventEmitter.getMaxListeners();

Результаты возврата:

  • Integer, возвращает лимитируемое количество по умолчанию

listeners

Запросить массив прослушивателей для указанного события объекта

1
Array EventEmitter.listeners(String ev);

Параметры звонка:

  • ev: строка, указывает название события.

Результаты возврата:

  • Array, возвращает массив прослушивателей для указанного события

listenerCount

Запрос количества прослушивателей для указанного события объекта

1
Integer EventEmitter.listenerCount(String ev);

Параметры звонка:

  • ev: строка, указывает название события.

Результаты возврата:

  • Integer, возвращает количество прослушивателей указанного события

Запрос количества прослушивателей для указанного события объекта

1 2
Integer EventEmitter.listenerCount(Value o, String ev);

Параметры звонка:

  • o: Значение, указывает объект запроса.
  • ev: строка, указывает название события.

Результаты возврата:

  • Integer, возвращает количество прослушивателей указанного события

eventNames

Имя события прослушивателя запроса

1
Array EventEmitter.eventNames();

Результаты возврата:

  • Array, возвращает массив имен событий

emit

Активно запускать событие

1 2
Boolean EventEmitter.emit(String ev, ...args);

Параметры звонка:

  • ev: строка, имя события
  • args: ..., параметры события будут переданы в функцию обработки событий

Результаты возврата:

  • Boolean, возвращает статус триггера события, возвращает true, если есть ответное событие, в противном случае возвращает false

toString

Возвращает строковое представление объекта. Обычно возвращается «[Native Object]». Объект может быть повторно реализован в соответствии с его собственными характеристиками.

1
String EventEmitter.toString();

Результаты возврата:

  • String, возвращает строковое представление объекта

toJSON

Возвращает представление объекта в формате JSON, обычно возвращая коллекцию читаемых свойств, определенных объектом.

1
Value EventEmitter.toJSON(String key = "");

Параметры звонка:

  • key: Строка, не используется.

Результаты возврата:

  • Value, возвращает значение, содержащее сериализуемый JSON