base-event.ts 474 B

12345678910111213141516171819
  1. import mitt, { Emitter, EventType } from "mitt";
  2. export class BaseEvent {
  3. protected _eventbus: Emitter<Record<EventType, unknown>>;
  4. constructor() {
  5. this._eventbus = mitt();
  6. }
  7. addEventListener(eventName: string, callback) {
  8. this._eventbus.on(eventName, callback);
  9. return this;
  10. }
  11. removeEventListener(eventName: string, callback?) {
  12. this._eventbus.off(eventName, callback);
  13. return this;
  14. }
  15. allClear() {
  16. this._eventbus.all.clear();
  17. }
  18. }