12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- const PubSub = {
- handlers: {}
- };
- PubSub.off = function (eventType, fn) {
- const fns = this.handlers[eventType] || [];
- if (fn) {
- const index = fns.findIndex(_fn => _fn === fn);
- if (index > -1) fns.splice(index, 1);
- } else {
- delete this.handlers[eventType];
- }
- return this;
- };
- PubSub.on = function (eventType, handler) {
- if (!(eventType in this.handlers)) {
- this.handlers[eventType] = [];
- }
- this.handlers[eventType].push(handler);
- return this;
- };
- PubSub.emit = function (eventType) {
- // eslint-disable-next-line prefer-rest-params
- const handlerArgs = Array.prototype.slice.call(arguments, 1);
- if (!this.handlers[eventType]) return this;
- for (let i = 0; i < this.handlers[eventType].length; i++) {
- this.handlers[eventType][i].apply(this, handlerArgs);
- }
- return this;
- };
- export default PubSub;
- /*
- * 编辑游客
- * */
- export const EDIT_TOURIST_ITEM = 'EDIT_TOURIST_ITEM';
- /*
- * 编辑游客
- * */
- export const ADD_TOURIST_ITEM = 'ADD_TOURIST_ITEM';
- /*
- * 删除游客
- * */
- export const DELETE_TOURIST_ITEM = 'DELETE_TOURIST_ITEM';
- export const CHOOSE_TOURIST = 'CHOOSE_TOURIST';
|