slice - 不明白为什么要使用 slice (React-native)
问题描述
为什么在删除功能中使用 Slice?我尝试了没有切片功能的相同方法,结果是我无法删除最后一个元素。
export default class FlatListBasics extends Component {
state = {
data:[
{key: 'Devin'},
{key: 'Jackson'},
{key: 'James'},
{key: 'Joel'},
{key: 'John'},
{key: 'Jillian'},
{key: 'Jimmy'},
{key: 'Julie'},
]
};
delete(item){
this.setState(previousState => {
let tasks = previousState.data.slice();
tasks.splice(item,1);
return { data:tasks};
});
}
.....
解决方案
.slice()
will return a copy of the array. Without it, you're mutating the previous state. React depends on you not to do that in order to detect what has changed so it can recreate only the relevant parts of the template. Read more at React Tutorial.
推荐阅读
- oracle - 我如何处理 ORA-00917 错误异常块
- angular - NgRx 效果 - 映射操作以进行顺序服务调用和更新存储
- ios - 在后台下载图像
- javascript - 使用javascript替换特定位置的所有空格
- python - Python3字节编码
- angular - 在 Angular 5 中使用 Nativescript 的环境变量
- css - 如何使用多类更改子类的样式
- powershell - 带有 content.replace 的嵌套 foreach() 循环未按预期设置内容(或添加内容)
- css - 在全屏模式下使用 Google 地图看不到警报对话框
- r - 在R中迭代数据框