[英]Angular: how to destroy a promise
在我的词云应用程序中,我有2个指令,一个词云指令和一个表指令,当在词云中选择一个词时,它会通知表,因此表也将选择对应的词。 单词cloud和表通过驻留在服务中的promise进行通信,我想破坏promise:
服务代码:
this.selectedDefferd = $q.defer();
this.selectedPromise = this.selectedDefferd.promise;
notifySelect(id)
{
this.selectedDefferd.notify({newData: this.data[id]});
}
setSelect(callBack) {
this.selectedPromise.then(null, null, callBack);
}
词云指令代码:
d3.select(this).on("click", function (d) {
...
ctrl.wordService.notifySelect(d.id);
}
表指令
var selectCallback = $(".selected");
wordService.setSelect(selectCallback);
提前致谢,
哈雷尔
使用reject()可以拒绝承诺
this.selectedDefferd.reject('Rejected!');
Promise的第二个参数用于拒绝。
promise.then(function(greeting) {
alert('Success: ' + greeting);
}, function(reason) {
alert('Failed: ' + reason);
}, function(update) {
alert('Got notification: ' + update);
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.