我是React的新手,我只想在表中显示记录并获取类似的数据
const [allowances, setAllowances] = useState([]);
useEffect(() => {
fetch("http://127.0.0.1:8000/allowances/")
.then(data => {
return data.json();
})
.then(data => {
setAllowances(data);
})
.catch(err => {
console.log("error",err);
});
}, []);
这是我如何检查长度=>
<div>{allowances.length}</div>
如果我在setAllowances(data)
之前登录数据,则数据有3条记录。但是当我检查allowances.length
时,没有记录。其显示像<div></div>
。所以我认为这个setAllowances
无法正常工作,对吗?怎么了?
更新
这是我在setAllowance =>之前记录的我的数据
答案 0 :(得分:1)
您没有正确设置数据。根据{{1}}的内容,应为:
data
答案 1 :(得分:-1)
要使useEffect
钩子每次状态更改时都进行更新,则需要将其作为参数传递。在将回调设置为allowances
后,在方括号内传递useEffect
会发生这种情况。查看this链接