<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>this</title>
</head>

<body>
<div id="app">

</div>
<script crossorigin src="https://unpkg.com/react@16/umd/react.production.min.js"></script>
<script crossorigin src="https://unpkg.com/react-dom@16/umd/react-dom.production.min.js"></script>
<script src="https://unpkg.com/babel-standalone@6/babel.min.js"></script>
<script type="text/babel">
// 复杂的组件 es6 class
// 页面上是我喜欢你 点击之后变成你喜欢我
class Complex extends React.Component{
constructor(){
super()
this.state = {
flag:true
}
//第二种改变this
// this.handelClick = this.handelClick.bind(this)
}
//第三种匿名函数
handelClick = ()=>{
// 改变state this.setState
const {flag} = this.state;
this.setState({
flag:!flag
})
}
//第一种改变this,默认严格模式
//<h1 onClick={this.handelClick.bind(this)}>{msg}</h1>
render(){
const {flag} = this.state
const msg = flag ? '改变前' : '改变后'
return (
<div>
<h1 onClick={this.handelClick}>{msg}</h1>
</div>
)
}
}
ReactDOM.render(<Complex />,document.getElementById("app"))
</script>
</body>

</html>