2.0.1 • Published 3 years ago

snow-bus v2.0.1

Weekly downloads
-
License
ISC
Repository
-
Last release
3 years ago

订阅发布模式

/**

  • Created by 蓝枫 on 2019/5/21.
  • @desc 订阅发布模式。 */

存放 订阅消息

let _listeners = {};

let Bus = {

添加 订阅

watch(target, callback) { if (!_listenerstarget) { _listenerstarget = []; } _listenerstarget.push(callback); },

发布信息

trigger(target, ...args) { if (!_listenerstarget) return false; _listenerstarget.forEach(listener => { // listener.apply(this, args) // 20210419 改动 listener(args) }) },

移除订阅

unwatch(target, callback) { if (!_listenerstarget) return false; if (!callback) { _listenerstarget = []; } else { _listenerstarget.forEach((listener, index) => { if (listener == callback) _listenerstarget.splice(index, 1); }) } } }

module.exports = Bus;

使用

npm install snow-bus --save

vue项目中 main.js 引入 import Bus from 'snow-bus'

Vue.use(Bus)

组件中使用 订阅 this.$bus.watch("ADD_TODE", this.addTodo); 发布 this.$bus.trigger('ADD_TODE',item);

2.0.1

3 years ago

1.0.2

4 years ago

1.0.1

4 years ago

1.0.0

4 years ago