首先,react是Facebook开发的一套前端框架,仅仅是MVC中的V。核心思想是“封装组件”,组件封装后能够做为一个独立的实体被引入到新的组件中,这样新的组件就又是一个实体了,因为组件的实现了可复用,因此是大大减少了开发的工做量。html
*react的值能够分为私有和公有,私有的值通常就用this.state来表示了好比:前端
<Input type="password" before={passwordIcon} name="passwordAgain" id="againPassword“onChange={this.handleAgainChange} value={this.state.passwordAgain} error={this.state.error} placeholder="确认密码"/>,
和这个相关的就是setState了,通常用在事件里面,用来更改数据。react
handleChange(e) { this.props.validate(e.target.value); this.setState({passwordAfter: e.target.value});
}
不过这样的话浏览器会报错说setState没有定义,解决方法呢就是要再构造函数里bind一下,像这样:this.handleChange = this.handleChange.bind(this);git
*公有的呢就是props了,props用于父子组件之间的通讯,super(props);放在构造函数里就能够把父组件里的属性继承下来了,当须要从父组件继承的时候,使用this.props就能够了,以下:github
handleClick() { this.props.onSubmit(this.state.passwordBefore, this.state.passwordAfter, this.state.passwordAgain); }
*react的生命周期基本上就是组件执行的过程了:浏览器
第一步执行的是getInitialState,只在组件装载以前调用一次;缓存
第二步是getDefaultProps,做用是只在组件建立时调用一次并缓存返回的对象。前端框架
第三步执行的是render,使用原生html标签或者子组件组装生成这个组件的html结构,也能够返回 null 或者 false,这时候 ReactDOM.findDOMNode(this) 会返回 null。框架
第四步:装载组件触发:componentWillMount 只会在装载以前调用一次,在 render 以前调用,你能够在这个方法里面调用 setState 改变状态,而且不会致使额外调用一次 render。componentDidMount 只会在装载完成以后调用一次,在 render 以后调用,从这里开始能够经过ReactDOM.findDOMNode(this) 获取到组件的 DOM 节点。函数
更新组件触发:(内嵌循环执行的)
componentWillReceiveProps
shouldComponentUpdate
componentWillUpdate
componentDidUpdate
这些组件不会在首次render组件的周期调用。
最后一步呢是卸载组件触发:componentWillUnmount
*以上为react的一些基本概念,一些比较好的学习资源跟你们分享一下:
1入门教程