- on*函数可直接使用,但只能使用在html标签上,自己创建的组件标签不可
- 组件可以增加state状态,修改用setState方法,修改会有缓存,只能保证在渲染到页面之前会改好。所以setState后立马去使用值可能是不对的
- 狗子组件1:点击会打印bark和run
class Dog extends Component {
bark () {
console.log('bark')
}
run () {
console.log('run')
}
render () {
return (<div onClick={
//有两个方法需要实现,所以用一个函数进行封装
()=>{
this.bark();
this.run();
}
}>DOG</div>)
}
}
ReactDOM.render(<Dog/>,document.querySelector('#root'));
- 狗子组件2:增加bark和run状态,开始为false,点击变成true,1s后还原成false
class Dog extends Component {
constructor () {
super()
this.state={
bark:false,
run:false
}
}
clickYeah () {
this.setState({
bark: true,
run: true
})
//因为setState会有缓存,值后面才会变,所以这里打印出来还是false
con