Javascript ReactJS axios.post通过返回对象的数组函数在映射内

Javascript ReactJS axios.post通过返回对象的数组函数在映射内,javascript,reactjs,Javascript,Reactjs,所以我尝试映射一个数组,数组中的每个项目都有一个post请求的参数值。因此,我正在寻找一个带有post请求-响应返回值的finalArray,并且需要在其他地方使用finalArray const finalArray = paramArray.map(paramKey => { axios.post(URL, { filters: [ { field: "key", values: [paramKey.key]

所以我尝试映射一个数组,数组中的每个项目都有一个post请求的参数值。因此,我正在寻找一个带有post请求-响应返回值的finalArray,并且需要在其他地方使用finalArray

const finalArray = paramArray.map(paramKey => {
  axios.post(URL, {
    filters: [
      {
        field: "key", 
        values: [paramKey.key]
      }
    ]
  }).then(res => {
      //res.data.itemName
    });

  return {
    key: paramKey.key,
    text: //res.data.itemName,
    value: paramKey.value
  }
});
因此,我不知道如何在
中的函数外部传递
res.data.itemName
。然后
。我尝试在axios之前声明一个变量,例如
let name=“”
,并在
内。然后
我有
name=res.data.itemName
,然后我将名称作为
text:name
传递给text,但这将给我所有空字符串。我还尝试将返回放入
。然后
,这样
finalArray
会给我未定义的值

有没有办法将
res.data.itemName
作为
text
的值传递?

您可以使用

async函数(){
const promises=paramArray.map(paramKey=>axios.post(URL{
过滤器:[
{
字段:“键”,
值:[paramKey.key]
}
]
})
);
常量值=等待承诺。全部(承诺)
const finalArray=paramArray.map((paramKey,index)=>{
返回{
key:paramKey.key,
text:values[index].data.itemName,
值:paramKey.value
}
})

}
但是这样我可以在这个承诺之外使用finalArray。好吗?你可以使用wait。我使用wait更新了答案。通过这样做,你可以使用finalArray。谢谢,我不得不重新安排我的代码一点,使其工作,但这帮助了很多!