gpt4 book ai didi

javascript - Angular2 $http promise 与 Promise.all()

转载 作者:行者123 更新时间:2023-11-30 15:41:24 26 4
gpt4 key购买 nike

我正在尝试在 angular2 中实现一个简单的 promise 模式。这个想法是当两个 promise 得到解决时执行一段代码。

方法是使用 Promise.all() 并在我的服务中传递 promise :

predict(data): Promise<any> {
let headers = new Headers({'Content-Type': 'application/json'});
let dataString = JSON.stringify(data);

return this.http
.post(`${this.baseUrl}/predict`, dataString, headers)
.toPromise()
.then(
(res: Response) => Promise.resolve(res.json())
)
.catch(
(err) => Promise.reject(err)
);
} // predict

和组件 Controller :

promiseOne = this.apiservice.predict(titleToPredict);
promiseTwo = this.apiservice.predict(secondTitleToPredict);

Promise.all(promiseOne, promiseTwo)
.then(data => console.log(data))
.catch(err => console.log(err));

但是 TypeScript 返回给我 提供的参数与调用目标的任何签名不匹配。

据我所知,这些方法是 promise ,所以...我不知道问题出在哪里。

最佳答案

应该是……

Promise.all([promiseOne, promiseTwo])

... 因为此方法采用一个参数 - an Iterable (例如数组)。

关于javascript - Angular2 $http promise 与 Promise.all(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40753458/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com