• eventName {string|symbol}
    • 返回: {Function[]}

    返回 eventName 事件的监听器数组的拷贝,包括封装的监听器(例如由 .once() 创建的)。

    1. const emitter = new EventEmitter();
    2. emitter.once('log', () => console.log('只记录一次'));
    3. // 返回一个数组,包含了一个封装了 `listener` 方法的监听器。
    4. const listeners = emitter.rawListeners('log');
    5. const logFnWrapper = listeners[0];
    6. // 打印 “只记录一次”,但不会解绑 `once` 事件。
    7. logFnWrapper.listener();
    8. // 打印 “只记录一次”,且移除监听器。
    9. logFnWrapper();
    10. emitter.on('log', () => console.log('持续地记录'));
    11. // 返回一个数组,只包含 `.on()` 绑定的监听器。
    12. const newListeners = emitter.rawListeners('log');
    13. // 打印两次 “持续地记录”。
    14. newListeners[0]();
    15. emitter.emit('log');