gpt4 book ai didi

arrays - angular 5,如何从 promise 中返回数组?

转载 作者:行者123 更新时间:2023-12-01 11:16:55 28 4
gpt4 key购买 nike

我正在创建一个数组,创建后该数组被解析为一个对象。但是,因为我需要在解析后根据特定值对 tempArray 进行排序,所以我需要它作为数组,而不是对象。也因为排序后我使用 *ngFor 显示它。还是以某种方式对对象进行排序而不是将其改回数组更好?

返回的Promise的console.log显示在下方。

var tempArray = []
return new Promise((resolve, reject) => {
let error = false;
var i = 0;
for (let key of arrayOfPosts) {
tempArray[i] = {
"_id": key._id,
"postPub": key.postPub,
"timePast": this.timePastPublix
}
i++
}

if (error) {
reject('error')
} else {
resolve(tempArray)
}
});

{_id: "5aba1af4c97ce42ea81893bc", postPub: "0.00", timePast: "1970-01-01T01:00:00+01:00"}
{_id: "5ac698172910d705ecd66378", postPendingPayoutPublic: "0.00", timePast: "1970-01-01T01:00:00+01:00"}

最佳答案

您可以将其作为数组返回,不需要对象:

var promise = new Promise((resolve, reject) => {
resolve([1,2,3,4,5]);
});

// reject example
var promise2 = new Promise((resolve, reject) => {
var array = [];
if(array.length == 0)
reject("error");
else
resolve(array);
});

promise.then(data => console.log(data));
promise2.then(data => console.log(data))
.catch(error => console.log(error));

这是一个 stackblitz,它在 *ngFor 中使用 promise 数组返回值:https://stackblitz.com/edit/angular-vpkk1a

关于arrays - angular 5,如何从 promise 中返回数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49702324/

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