我有一个 div,应该通过按一个按钮来显示名称。下面的两个按钮,如果你点击第一个,John 的名字应该出现,如果第二个,Donald。错误在哪里?
import React, { Component } from 'react';
class trueName extends Component {
constructor(props) {
this.state = {
name: {},
};
}
john = ()=>{
const {name}= this.state;
this.setState({name:"John"})
}
donald = ()=>{
const {name}= this.state;
this.setState({name:"Donald"})
}
render() {
return(
<div >
<div className="SelectName">
<span>{this.name}</span>
</div>
<button
className = "one"
onClick={ this.john}>
<span>My name John</span>
</button>
<button
className = "two"
onClick={ this.donald}
>
<span>My name Donald</span>
</button>
</div>
)
}
}
export default trueName;
正如其他人所提到的,您需要将该值设置为字符串。
而且,当您显示该值时,您会遇到错误。您正在寻找this.name
而您要显示的内容是this.state.name
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句