Events 杜兰达尔酒店
我想问一下,是否有办法使用durandal pubsub机制取消特定订阅者的订阅 比如,;假设我有以下订阅:Events 杜兰达尔酒店,events,publish-subscribe,durandal,Events,Publish Subscribe,Durandal,我想问一下,是否有办法使用durandal pubsub机制取消特定订阅者的订阅 比如,;假设我有以下订阅: app.on('some topic') .then(function(){ ... }); 但当我这样做的时候: app.off('some topic') 它最终会删除特定主题的所有订阅服务器 相反,我想做以下几件事: var mySubscriber = function( msg, data ){ console.log( msg, data ); }
app.on('some topic')
.then(function(){ ... });
但当我这样做的时候:
app.off('some topic')
它最终会删除特定主题的所有订阅服务器
相反,我想做以下几件事:
var mySubscriber = function( msg, data ){
console.log( msg, data );
};
var token = PubSub.subscribe( 'MY MESSAGE', mySubscriber );
PubSub.unsubscribe( token );
(以上代码片段取自PubSubjects库示例)
查看源代码,我找到了解决方案。您只需要将回调存储在函数引用中,并在想要取消订阅时传递该引用查看我找到的解决方案的源代码。您只需要将回调存储在函数引用中,并在想要取消订阅时传递该引用
var subscribeTopic = app.on('some topic')
.then(function(){ ... });
subscribeTopic.off();