第六节,用户交换,操作this.state对象

来源:互联网 发布:开淘宝网店计划书 编辑:程序博客网 时间:2024/05/27 20:51
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script src="js/react.js"></script>  
<script src="js/react-dom.js"></script> 
<!-- 原本的 react package 被拆分为 react 及 react-dom 两个 package。其中 react package 中包含 React.createElement、 .createClass、 .Component, .PropTypes, .Children 这些 API,而 react-dom package 中包含 ReactDOM.render、 .unmountComponentAtNode、 .findDOMNode。 -->


<script src="js/browser.min.js"></script>  <!-- 使浏览器支持babel,你可以使用ECMAscript2015编码(javascript下一代标准) .js、.jsx、.es和.es6 -->
</head>
<body>
<div id="ex1"></div>
<script type="text/babel">
let ChangeLike = React.createClass({
//ceateClass创建的类,首字母必须大写 例如 HelloMessage          
//let是ECMA6的声明变量,用它所声明的变量, 只在let命令所在的代码块内有效。 
getInitialState(){
//getInitialState 是系统初始方法,不能修改方法名
//用来定义state内的初始属性
return {like : true};
},
handleClick(){
// setState用来变更  this.state
this.setState({like : !this.state.like});
},
render(){
// this.state.like 可以获取state内的 like属性
let text = this.state.like ? 'like' : 'doesn’t like';
return (
<p onClick={this.handleClick}>
You {text} it, click here to change.
</p>
);


}
});
ReactDOM.render(
<ChangeLike />,
document.getElementById('ex1')
);
</script>
</body>
</html>
0 0
原创粉丝点击