【发布时间】:2020-07-08 05:41:25
【问题描述】:
我正在研究 Ionic 4 和 React,我正在尝试从函数中获取数据以返回页面,但我无法从承诺中获取数据。
仅供参考,我正在使用 react 的功能版本/模式。
participants.map(participant => {
var paymentStatus = false;
fetchSelectedPaymentEvents(participant, selectedEvent)
.then(data => {
paymentStatus = data;
})
return (
<IonButton color={paymentStatus}>Button<IonButton>
);
});
我尝试过使用 UseState,它在某种程度上可以工作,但我需要它在地图中工作,但我不能在 React Hook 中使用 useState。
编辑: 我已经尝试过异步/等待,但是当我这样做时出现以下错误: 错误:对象作为 React 子级无效(找到:[object Promise])。如果您打算渲染一组子项,请改用数组。
编辑:
这里是 fetchSelectedPaymentEvents() 的代码:
function fetchSelectedPaymentEvents(participant_id: any, event_id: any) {
return axios({
url: "URL",
method: "POST",
data: {
"participant_id": participant_id,
"payment_event_id": event_id
}
}).then(response => {
var data = response.data["payment_records"]
if (data === undefined || data.length == 0) {
return "danger"
}
return "success"
})
}
顺便说一句,返回“danger”或“success”的目的不是准确地打印文本,而是更多地用于设置 Ionic 元素的样式。如果我的代码过于误导,请致歉。我进行了编辑以使其更接近我的实际需要。
【问题讨论】:
标签: javascript reactjs ionic-framework