dojo发布者订阅者模式(topic.publish/topic.subscribe)

topic.publish:

用于发布消息,接收任意多个参数,第一参数为要发布的信息名字(唯一标识),如"init/method",其他参数为传递给订阅回调函数的参数。

topic.subscribe:

用于订阅消息,接收两个参数,第一参数为要订阅的消息名字(唯一标识),如"init/method",第二参数为回调函数。

示例:

var handler = topic.subscribe("some/topic", function(){
	console.log("received:", arguments);
	handler.remove();
});
 
topic.publish("some/topic", "one0", "two0");

topic.publish("init/method", function(map,toolbar){
    new Location(map,toolbar);
});
 
topic.subscribe("init/method", function(method){
	if(lang.isFunction(method)){
        method(map,toolbar);  //map需要传进去
    }
});

猜你喜欢

转载自blog.csdn.net/wml00000/article/details/82857826