错误:无法读取空的财产
问题描述:
CODE:错误:无法读取空的财产
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>
)
}
});
问题:
以下是错误我得到:
Cannot read property 'start' of null
如果我改变this.state.start
到this.props.start
,错误消失,但董事会不render
。
我该如何解决这种情况?
答
的问题是,你有一个拼写错误,而不是getInitalState
使用getInitialState
,这就是为什么,你得到的错误:
Cannot read property 'start' of null
利用这一点,它的工作:
getInitialState() {
return {
start: false
}
},
答
你状态对象为空。这是因为您的函数名称中存在拼写错误。函数名称应该是getInitialState
。那么你的状态将有默认值start:false