是否可以为Angular2中的相同Promise提供多个处理程序?例如,如果我正在设计一个服务并希望允许多个客户订阅它并在Promise解决后收到通知?
注意,我不是问如何从服务中返回多个值,也不是在问如何链接Promises。
答案 0 :(得分:1)
基本思路不是不对then
返回的承诺添加回调,而是将它们添加到原始承诺中。这样的事情会做:
let a = [fn1, fn2];
let p = new Promise(fn);
a.forEach(fn => {p.then(fn)});
答案 1 :(得分:0)
let callbacks = [fn1, fn2 ...]
promise.then((resolvedValue) => {
callbacks.forEach(fn => fn(resolvedValue));
}