reactjs - 反应 setState 覆盖数组状态
问题描述
我下面的代码是覆盖我的数组而不是在数组顶部添加。我不知道为什么会这样。
state = { someArray: [] };
onButtonClick = () => {
this.setState((state, props) => ({
someArray: [...state.someArray, props.element]
}));
};
解决方案
这是因为您没有传播someArray
. 尝试这个:
onButtonClick = () => {
this.setState((state, props) => ({
someArray: [...state.someArray, props.element]
}));
}
推荐阅读
- c# - 出现错误:添加成员函数时 CS1061 统一
- google-apps-script - 我被迫填写表格两次以执行 2 个功能。建议一键执行 2 个功能?
- mikro-orm - 显示数据透视列
- powerquery - PowerQuery 运行很慢
- bash - 执行 bash 脚本,该脚本将在 Apache 重新启动后继续执行
- reactjs - React 应用程序部署与 firebase 完成,但我没有得到托管 url?我现在为成功部署做什么
- javascript - 为什么anime.js 在动画CSS 属性时会跳过某些延迟?
- amazon-web-services - 使用 API 网关的自定义域的 route53 返回禁止
- html - 即使高度为 100%,高度也不会增长到最大高度
- django - DRF MultiPartParser 将值作为列表返回