如何修复React中的``无法执行React状态...''错误

时间:2019-03-31 10:43:31

标签: reactjs

我在LyricCreate中做了突变

` onSubmit = (e) => {
    e.preventDefault();
    const { content } = this.state;
    const { songId, addLyric } = this.props;

    addLyric({
        variables: {
            content,
            songId
        },
    }).then( () => this.setState({ content: '' }) )
}` 

一切顺利,并添加到数据库中。

但是在父组件中出现enter image description here错误

创建刷新页面后,抒情诗出现在lyricList中,并且直到我再次进行突变,父组件songDetails才出现错误。


请帮助。

1 个答案:

答案 0 :(得分:0)

您可以检查组件是否以此方式安装

componentDidMount() { 
  this._ismounted = true;
}

componentWillUnmount() {
   this._ismounted = false;
}

onSubmit = (e) => {
   e.preventDefault();
   const { content } = this.state;
   const { songId, addLyric } = this.props;

   addLyric({
        variables: {
            content,
            songId
        },
    }).then(() => {
       if(this._ismounted {
         this.setState({ content: '' }) 
       }
    })
}