美文网首页
setState功能失效,非异步导致

setState功能失效,非异步导致

作者: Shiki_思清 | 来源:发表于2020-08-09 18:43 被阅读0次

由于子组件中使用了componentWillReceiveProps,每次在父组件中使用setState时,都会执行componentWillReceiveProps

解决办法:在componentWillReceiveProps中进行判断,如果不满足条件及时return即可解决

  // 子组件
  componentWillReceiveProps() {
    if (this.state.selectItem === this.props.isDefaultChoiseUnlimited) {
      return;
    }
    console.log(this.state.selectItem, this.props.isDefaultChoiseUnlimited);
    this.setState({ selectItem: this.props.isDefaultChoiseUnlimited });
  }

相关文章

网友评论

      本文标题:setState功能失效,非异步导致

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