【发布时间】:2021-10-29 09:37:45
【问题描述】:
我有一个映射,并且在每个映射中我都想在文件存储 IPFS 中获取数据,例如名称。然后我想在界面上返回名称。但是,我得到一个“错误:对象作为 React 子级无效(找到:[object Promise])。如果您打算渲染一组子级,请改用数组。”有人可以帮帮我吗?几个小时以来一直试图解决这个问题。似乎无法理解为什么,因为我知道 hName 应该是一个字符串。
{this.props.hawkers.map((hawker, key) => {
const hawkerDetails = axios
.get("https://ipfs.infura.io/ipfs/" + hawker.profileHash)
.then(function (response) {
console.log("this is the data: ", response.data);
return response.data;
})
.catch(function (error) {
console.log(error);
});
const hName = hawkerDetails.then((details) => {
return hName;
});
return (
<>
<h4 style={{ display: "flex", marginTop: 20 }}>
<Link
to={`/hawkerInfo/${hawker.owner}`}
// state={{ chosenHawkerPk: hawker.owner }}
state={{ chosenHawkerPk: hawker }}
>
{hName}
</Link>
</h4>
【问题讨论】:
-
如果你在这个函数中使用console.log,你会看到什么? const hName = hawkerDetails.then((details) => { console.log(details) });我想知道这个名字是否可以在 details.hName 或类似的东西上
标签: javascript reactjs promise axios ipfs