玩codecademy玩到 reactjs part2,
但係有樣野唔明,
var Child = React.createClass({
handleChange: function (e) {
var name = e.target.value;
this.props.nowChange(name);
},
render: function () {
return (
<div>
<h1>
Hey my name is {http://this.props.name}!
</h1>
<select
id="great-names"
onChange={this.handleChange} >
<option value="Frarthur">
Frarthur
</option>
<option value="Gromulus">
Gromulus
</option>
<option value="Thinkpiece">
Thinkpiece
</option>
</select>
</div>
);
}
});
上面紅色個function入面個parameter佢係點樣知個e係咩黎, 姐係正常call function係寫埋parameter入去, 例如: handleChange("Frarthur"),
但係點解係上面佢就咁一句onChange={this.handleChange}就知個parameter係咩黎
this.handleChange 係一個function variable
this.handleChange() 就係call function
你可以set
let a = this.handleChange
跟住call a(); 其實即係call 左this.handleChange();
原理一樣
上面set左onChange 時 (其實set左select component既 props.onChange)
React 就會幫你call onChange(xxx)
即係call this.handleChange(xxx);
所以就會pass左event 入去
唔知有無錯 可能有d 1999