[英]Unsubscribe specific subscription with Deezer Javascript SDK DZ.Event.unsubscribe
在Deezer Javascript SDK中, DZ.Event.unsubscribe
方法可用于取消订阅特定事件的所有订阅 ,但是有什么方法可以取消订阅特定订阅而不是全部订阅?
DZ.Event.subscribe
方法不会返回取消订阅调用中可能提供的任何ID,并且将订阅回调函数发送到取消订阅方法也不起作用:
function callback(args) {
console.log('GOT player_position 1', args);
}
DZ.Event.subscribe('player_position', callback);
DZ.Event.subscribe('player_position', args => {
console.log('GOT player_position 2', args);
});
DZ.Event.unsubscribe('player_position', callback); // Unsubscribes both subscriptions
当前只有访问DZ.Event.callbacks
讨厌方法
例如,您可以:
//declare your own unsubscribe function
var unsubscribe = (event, callback) => {
if(DZ.Event.callbacks[event]) {
let index = DZ.Event.callbacks[event].indexOf(callback); //find the index of your callback
if(index !== -1) {
DZ.Event.callbacks[event].splice(index, 1); //remove it
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.