這聽起來很奇怪,但我正在尋找一種多次解決承諾的方法。有沒有什麼辦法可以做到這一點?下面的示例中的如何多次解決承諾?
想:
getPromise() {
const event = new Event('myEvent');
setTimeout(() => {
window.dispatchEvent(event);
}, 5000);
setTimeout(() => {
window.dispatchEvent(event);
}, 7000);
return new Promise((resolve) => {
window.addEventListener('myEvent',() => {
resolve('some value'));
});
resolve('some value'));
});
};
然後。那麼():
getPromise().then(data => {console.log(data)})
應該給予以下結果:
some value // initial
some value // after 5000ms
some value // after 7000ms
所以我知道有圖書館以流式傳輸數據,但我真的在尋找一種原生的非CallBak方法來實現這一點。
承諾不能被解析多次。 –