React 中 setState 对数组、对象更改数据的操作

React 中 setState 对数组、对象更改数据的操作

// 1、修改object中某项
this.setState({
  object: {...object, key: value}
});
  
// 2、删除数组首位
array.splice(0, 1);
this.setState({
  array
});
  
// 3、删除数组尾部
array.splice(array.length - 1);
this.setState({
  array
});
  
// 4、删除数组任意一项
array.splice(index, 1);
this.setState({
  array
});
  
// 5、数组尾部添加一项
this.setState({
  array: [...array, item]
});
 
//  6、数组头部添加一项
this.setState({
  array: [item, ...array]
});
  
// 7、数组任意位置添加一项
array.splice(index, 0, item);
this.setState({
  array
});
 
// 8、修改数组中任意一项中值
function updateArrayItem(index, key, value) {
  this.setState({
    array: array.map((item, _index) => _index == index ? {...item, [key]: value} : item)
  });
}

//  9、复杂类型修改
this.setState(prevState => return newState);