ca98a8f406266e15dd15ea580828a9f3368840b6.js 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. System.register(["__unresolved_0", "cc", "__unresolved_1"], function (_export, _context) {
  2. "use strict";
  3. var _reporterNs, _cclegacy, MessageEventData, EventDispatcher, _crd;
  4. function _reportPossibleCrUseOfListenerFunc(extras) {
  5. _reporterNs.report("ListenerFunc", "./EventMessage", _context.meta, extras);
  6. }
  7. function _reportPossibleCrUseOfMessageEventData(extras) {
  8. _reporterNs.report("MessageEventData", "./MessageManager", _context.meta, extras);
  9. }
  10. _export("EventDispatcher", void 0);
  11. return {
  12. setters: [function (_unresolved_) {
  13. _reporterNs = _unresolved_;
  14. }, function (_cc) {
  15. _cclegacy = _cc.cclegacy;
  16. }, function (_unresolved_2) {
  17. MessageEventData = _unresolved_2.MessageEventData;
  18. }],
  19. execute: function () {
  20. _crd = true;
  21. _cclegacy._RF.push({}, "c680af5iPNKeIO4cArf/90m", "EventDispatcher", undefined);
  22. /*
  23. * @Author: dgflash
  24. * @Date: 2022-09-01 18:00:28
  25. * @LastEditors: dgflash
  26. * @LastEditTime: 2022-09-02 10:57:01
  27. */
  28. /* 事件对象基类,继承该类将拥有发送和接送事件的能力 */
  29. _export("EventDispatcher", EventDispatcher = class EventDispatcher {
  30. constructor() {
  31. this._msg = null;
  32. }
  33. /**
  34. * 注册全局事件
  35. * @param event 事件名
  36. * @param listener 处理事件的侦听器函数
  37. * @param object 侦听函数绑定的作用域对象
  38. */
  39. on(event, listener, object) {
  40. if (this._msg == null) {
  41. this._msg = new (_crd && MessageEventData === void 0 ? (_reportPossibleCrUseOfMessageEventData({
  42. error: Error()
  43. }), MessageEventData) : MessageEventData)();
  44. }
  45. this._msg.on(event, listener, object);
  46. }
  47. /**
  48. * 移除全局事件
  49. * @param event 事件名
  50. */
  51. off(event) {
  52. if (this._msg) {
  53. this._msg.off(event);
  54. }
  55. }
  56. /**
  57. * 触发全局事件
  58. * @param event 事件名
  59. * @param args 事件参数
  60. */
  61. dispatchEvent(event) {
  62. if (this._msg == null) {
  63. this._msg = new (_crd && MessageEventData === void 0 ? (_reportPossibleCrUseOfMessageEventData({
  64. error: Error()
  65. }), MessageEventData) : MessageEventData)();
  66. }
  67. for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
  68. args[_key - 1] = arguments[_key];
  69. }
  70. this._msg.dispatchEvent(event, ...args);
  71. }
  72. /**
  73. * 销毁事件对象
  74. */
  75. destroy() {
  76. if (this._msg) {
  77. this._msg.clear();
  78. }
  79. this._msg = null;
  80. }
  81. });
  82. _cclegacy._RF.pop();
  83. _crd = false;
  84. }
  85. };
  86. });
  87. //# sourceMappingURL=ca98a8f406266e15dd15ea580828a9f3368840b6.js.map