我想在我的测验应用程序中为错误答案声明一个空状态,如下所示:
const [wrongAnswers, setWrongAnswers] = useState();
但是如果我尝试用数据填充它(我想让它成为一个对象数组),它总是返回未定义。我尝试这样:
const getWrongAnswers = () => {
const result = birds.filter((bird) => bird.status === "wrong");
setWrongAnswers([...wrongAnswers, result]);
};
如果我将我的状态声明为空数组,它总是会给我一个空数组,与空对象数组相同。
我不知道我在这里缺少什么。
最佳答案
在声明时用空数组初始化它。
const [wrongAnswers, setWrongAnswers] = useState([]);
并且过滤器返回数组,因此使用扩展运算符而不仅仅是结果
setWrongAnswers([...wrongAnswers, ...result]);
关于reactjs - 将数据插入空数组 - React useState() Hook,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72047318/