reactjs - 子组件没有从父组件获取数据
问题描述
在 React 中,我无法让子组件从父组件接收数据。在 app.js 中记录数据变量时,它显示了它应该显示的内容,在子组件中我收到无法读取未定义映射并将其记录在子组件中的错误返回未定义,因为里面没有任何内容
App.js 中的代码
const [data, setData] = useState(0);
useEffect((loading) => {
const data = array.map((item) => {
const getData = async () => {
const value = await getValue(item);
setData((prev) => [...prev, value]);
};
return getData();
});
}, []);
console.log('data', data); // all good inside app.js
return (
<>
<Child data={data} />
</>
);
这是子组件:
export default function Child({ data }) {
console.log(data); //nothing
return (
<>
{data.map((item) => (
<div>{item}</div>
))}
</>
);
}
解决方案
const [data, setData] = useState(0);
应该是
const [data, setData] = useState([0]);
由于 ifdata
最初是一个数字,因此data.map
内部Child
不起作用。
推荐阅读
- javascript - 为什么我在使用 jsQR 时会收到“传递给二值化器的格式错误的数据”,即使当我按照文档指示传递 Uint8ClampedArray 时也是如此?
- wso2 - WSO2 EI 响应时超出最大锁定计数错误
- angular - Angular RelativeLinkResolution - 旧版和更正版之间的差异
- python - 如何从包内的两个不同文件夹中导入一个模块,该模块导入另一个模块
- html - HTML - CSS 如何在使用滚动条时停止标题的移动
- java - 从 RoomDb 获取后如何添加元素
- autodesk-forge - 隐藏绿色枢轴点
- sftp - 数据工厂,在链接服务之间传递参数
- javascript - 使用node js并行调用多个API
- elasticsearch - 弹性搜索崩溃