我正在尝试使用数据库中的useState将数组添加到状态,但无法正常工作
const [state, setstate] = useState([]);
useEffect(() => {
axios.get("/api/reviews").then((response) => {
console.log(response.data.data);
setstate(response.data.data);
console.log(state);
});
}, []);
console.log(response.data.data)正确返回数组,因此数据在那里。但无论出于何种原因,都不会进入推荐状态。我尝试首先将所有适当的字段设置为初始状态。我尝试在setTestimonials内部使用回调函数,但没有任何效果。
任何建议将不胜感激!
答案 0 :(得分:1)
那是因为您使用setTestimonials
函数设置了状态,但是在您提供的代码顶部,我们可以看到该函数的名称是setstate
而不是setTestimonials
。
const [state, setstate] = useState([]);
useEffect(() => {
axios.get("/api/reviews").then((response) => {
console.log(response.data.data);
setTestimonials(response.data.data); // This should be setstate(response.data.data)
console.log(state);
});
}, []);