我有一個像這樣構造的反應組件。 我想從下拉列表中選擇用戶的選擇。反應:無法從窗體上的onchange事件處理程序設置狀態選擇
我收到以下錯誤消息,當我嘗試:
「遺漏的類型錯誤:無法讀取的未定義的屬性‘的setState’」
我下面的文檔的例子,所以我在哪裏我錯了?
export default class SearchPage extends Component {
....
handleChange(e) {
this.setState({
params: {
...this.state.params,
[e.target.name]: e.target.value
}
})
}
render() {
const { county, cause, activity } = this.state
return (
<div className="searchpage">
<form>
<select name="county" onChange={this.handleChange}
.....
我現在正在使用_.bind(this)_解決方法,但它拋出linting錯誤,顯然使用_.bind(this)_對性能來說是相當糟糕的。使用_onChange = {e => this.handleChange(e)} _似乎是最好的選擇 - 謝謝Yury! – simbro
如果在構造函數中執行一次,則綁定即可。 https://facebook.github.io/react/docs/reusable-components.html#no-autobinding –
實際上這是一個很好的方法,只是嘗試在構造函數中綁定,運行良好 – simbro