reactjs - 状态值在反应 js 中未定义
问题描述
我从后端获取数据并将其存储到状态(帖子)中。当我使用 post.name 时,它显示未定义。
const [post, setPost] = useState([]);
const getAllUser = async () => {
const response = await fetch("http://localhost:4000/getpost");
response.json().then((res) => setPost(res.data.Post));
// console.log(post);
};
useEffect(() => {
getAllUser();
}, []);
const component = post.component; // value is undefine
console.log(component);
解决方案
您需要在访问 post.name 之前验证是否填充了 post。
如果你使用 babel,你可以这样做:
post?.name
如果你不使用 babel:
post ? post.name : 'empty'
推荐阅读
- postgresql - 发票报告 - 在行发票中显示折扣 - Odoo 12 - Qweb
- javascript - 在 vue 项目中运行 npm run serve 时出现问题
- ansible - 从 java 运行 ansible playbook
- html - 具有border-radius的元素内部具有border-radius的元素不一致
- pytorch - 如何从 pytorch DataLoader 获取特定样本?
- python - pytransform PytransformError
- html - 如何将 Bootstrap 图标链接到 Ruby 上的链接?
- python - 如何从外键 id 中获取值?
- python - 替换值时numpy astype不起作用
- mongodb - Spring mongo:使用 IN 子句查询子文档数组以获取匹配的子文档