javascript AW pubsub(工作belove及以上子或酒吧)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript AW pubsub(工作belove及以上子或酒吧)相关的知识,希望对你有一定的参考价值。

(function($) {
 
    var o = $({});

    var calledEvents = {};
   
    $.subscribe = function() {
      o.on.apply(o, arguments);
	
      if (arguments[0] in calledEvents) 
	  {
        var eventName = arguments[0];
        var callback  = arguments[1];
        var clbArgs   = [
          {type: eventName}, // event

        ].concat(calledEvents[eventName][0]);

        callback.apply(o, clbArgs);
      }
    };
   
    $.unsubscribe = function() {
      o.off.apply(o, arguments);
    };
   
    $.publish = function() {
      o.trigger.apply(o, arguments);

      var eventName = arguments[0];
      var args      = Array.prototype.slice.call(arguments, 1);
      
      calledEvents[eventName] = args;
      
    };
   
}(jQuery));


// USAGE

$.subscribe('document/kunda', function(e, a, b) {
	console.log('A');
});

$.publish('document/kunda', ['AA', 'BBB']);

$.subscribe('document/kunda', function(e, a, b) {
	console.log('B');
});

以上是关于javascript AW pubsub(工作belove及以上子或酒吧)的主要内容,如果未能解决你的问题,请参考以下文章

javascript PubSub / EventBus / Mediator JavaScript模式

UnhandledPromiseRejectionWarning: TypeError: Channel credentials must be a ChannelCredentials object

JavaScript 中 PubSub / 过多事件和事件处理程序的性能成本?

javascript 活动PubSub

javascript pubsub - 缓存obj

javascript PubSub活动