用异步映射反应 setState 挂钩
react setState hook with async map
我正在尝试将 setState 挂钩与数组上的映射一起使用,其中最终对象的一个属性是异步函数
setState(
_exports.map(async (exportData) => {
const ruleStatus = await getMonitorData(exportData)
return {
...exportData,
ruleStatus
}
})
)
const getMonitorData = async (_export) =< {
return post('/app/monitor', _export)
}
但我得到的只是一系列未决承诺,页面呈现时没有实际内容(一切都未定义)
我想等待 post 完成并使用实际响应而不是我得到的未决承诺
怎么样
const promises = _exports.map(async (exportData) => {
const ruleStatus = await getMonitorData(exportData)
return {
...exportData,
ruleStatus
}
})
Promise.all(promises).then(setState)
我正在尝试将 setState 挂钩与数组上的映射一起使用,其中最终对象的一个属性是异步函数
setState(
_exports.map(async (exportData) => {
const ruleStatus = await getMonitorData(exportData)
return {
...exportData,
ruleStatus
}
})
)
const getMonitorData = async (_export) =< {
return post('/app/monitor', _export)
}
但我得到的只是一系列未决承诺,页面呈现时没有实际内容(一切都未定义) 我想等待 post 完成并使用实际响应而不是我得到的未决承诺
怎么样
const promises = _exports.map(async (exportData) => {
const ruleStatus = await getMonitorData(exportData)
return {
...exportData,
ruleStatus
}
})
Promise.all(promises).then(setState)