在使用setState时,state未定义错误

时间:2017-04-27 12:00:53

标签: javascript reactjs

我第一次尝试反应但被卡住了,想做多次绑定。

class HelloWorldComponent extends React.Component {
  constructor(props){
    super(props);

    this.state = {
      price
    }
  }

  render() {
    return (
      <div>
        <input type="text" onChange={e => this.setState({price: e.target.value})} placeholder="main price"/>
        <input type="text" placeholder="custom price"/>
      </div>
    );
  }
}

我的上述代码出了什么问题?价格没有定义?我已经宣布了

this.state = {
   price
}

1 个答案:

答案 0 :(得分:0)

原因是,当你写:

this.state = { price }

它将被视为:

this.state = { price : price }

由于价值未定义而引发错误。

要解决此问题,请定义价格或将值分配给关键价格,如下所示:

this.state = { price : '' };

检查此代码段:

str = 'a';

obj = {str};

console.log(obj);