无法读取componentWillReceiveProps中nextProps的属性值

时间:2017-02-26 12:03:33

标签: javascript reactjs

所以,我在componentWillReceiveProps函数中检查更改的道具。但我得到一个空错误。代码:

   componentWillReceiveProps(nextProps) {
        if (this.props.author.id!= nextProps.author.id) {
            debugger;
            this.setState({author: Object.assign({}, nextProps.author)});
        }
    }

当设置debbugger时,我似乎有值,但是然后chrome说它是未定义的: Image of error

让我更加困惑的是,当我为代码的粗糙添加一个调试器时,它没有给我任何错误而且作者我得到的nextProps被填充到输入字段中,但我仍然得到上面的错误之后

enter image description here

1 个答案:

答案 0 :(得分:0)

我确定当变量未定义时会发生。

如何减少此代码?

componentWillReceiveProps(nextProps) {
  if ((this.props.author && this.props.author.id) !== (nextProps.author && nextProps.author.id)) {