繁体   English   中英

角度:如何破坏诺言

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM