美文网首页
react setState 数组、对象多种方式

react setState 数组、对象多种方式

作者: qiuxiaojie | 来源:发表于2019-01-12 14:43 被阅读0次

    demo地址

    • 修改object中某项
    this.setState({
      object: {...object, key: value}
    });
    
    • 删除数组首位
    array.splice(0, 1);
    this.setState({
      array
    });
    
    • 删除数组尾部
    array.splice(array.length - 1);
    this.setState({
      array
    });
    
    • 删除数组任意一项
    array.splice(index, 1);
    this.setState({
      array
    });
    
    • 数组尾部添加一项
    this.setState({
      array: [...array, item]
    });
    
    • 数组头部添加一项
    this.setState({
      array: [item, ...array]
    });
    
    • 数组任意位置添加一项
    array.splice(index, 0, item);
    this.setState({
      array
    });
    
    • 修改数组中任意一项中值
    function updateArrayItem(index, key, value) {
      this.setState({
        array: array.map((item, _index) => _index == index ? {...item, [key]: value} : item)
      });
    }
    
    • 复杂类型修改
    this.setState(prevState => return newState);
    

    返回一个新的state对象,可以修改最复杂的state,一般不建议使用

    相关文章

      网友评论

          本文标题:react setState 数组、对象多种方式

          本文链接:https://www.haomeiwen.com/subject/qcccdqtx.html