代码:
var Game = createReactClass({
getInitalState() {
return {
start: false
}
},
handleStartClick() {
this.setState({
start: true
})
},
handleStopClick() {
this.setState({
start: false
})
},
render() {
return (
<div>
<h1>React.js Game of Life</h1>
<div className="buttons">
<button className="btn btn-danger" onClick={this.handelStopClick}>Stop</button>
<button className="btn btn-success" onClick={this.handelStartClick}>Start</button>
</div>
<Board start={this.state.start}/>
</div>
)
}
});
问题:
下面是我遇到的错误:
无法读取null的属性“开始”
如果我将this.state.start
更改为this.props.start
,错误就会消失,但是板子没有render
。
我怎样才能解决这个问题?
发布于 2017-04-22 07:33:10
问题是,您有一个拼写错误,而不是getInitalState
使用getInitialState
,这就是为什么,您将得到该错误:
无法读取null的属性“开始”
使用这个,它将工作:
getInitialState() {
return {
start: false
}
},
发布于 2017-04-22 07:37:10
您的状态对象为空。这是因为您在函数名中输入了错误。函数名应该是getInitialState
。那么您的状态将具有默认值start:false
。
https://stackoverflow.com/questions/43560952
复制