单击按钮时无法访问年龄!我得到警报但不是年龄。得到类似的东西'他的年龄是[对象]'。谢谢你!
class Hello extends React.Component {
render() {
return ( < div >
<h1>{this.props.name}</h1>
<button onClick={this.props.handleAge}>Click
</button>
< /div >
)
}
}
class App extends React.Component {
alertAge (age) {
alert('His age is ' + age);
}
render() {
return (
<div>
<Hello name="Eric" age={25} handleAge={this.alertAge}/ >
<Hello name="Dyna" age={30} handleAge={this.alertAge}/ >
<Hello name="Boss" age={8} handleAge={this.alertAge}/ >
</div>
);
}
}
答案 0 :(得分:1)
在Hello组件更改时,未使用您期望的参数调用您的函数:
<button onClick={() => {this.props.handleAge(this.props.age)}}>Click</button>
你需要包装它并传递你需要的变量。
答案 1 :(得分:1)
您没有将变量传递给alertAge
函数。
class Hello extends React.Component {
render() {
return (
<div>
<h1>{this.props.name}</h1>
<button onClick={() => { this.props.handleAge(this.props.age) }}>
Click
</button>
</div>
)
}
}