最近公司要作一个嵌套在app中的应用,考虑着用Facebook的react来开发view,因此就研究了下。下面是我在开发中遇到的坑,但愿能给你帮助。html
项目地址:https://github.com/baixuexiyang/reactreact
Issue:https://github.com/baixuexiyang/react/issuesios
欢迎star和fork!git
this.state
的初始值。this.props
(使用 in
检测属性)。 该方法在任何实例建立以前调用,所以不能依赖于 this.props
。另外,getDefaultProps()
返回的任何复杂对象将会在实例间共享,而不是每一个实例拥有一份拷贝。github
componentWillMount:chrome
服务器端和客户端都只调用一次,在初始化渲染执行以前马上调用。
componentDidMount:缓存
在初始化渲染执行以后马上调用一次,仅客户端有效(服务器端不会调用)。
componentWillReceiveProps:服务器
在组件接收到新的 props 的时候调用。在初始化渲染的时候,该方法不会调用。
shouldComponentUpdate:app
在接收到新的 props 或者 state,将要渲染以前调用。该方法在初始化渲染的时候不会调用,在使用 forceUpdate
方法的时候也不会。测试
若是肯定新的 props 和 state 不会致使组件更新,则此处应该 返回 false
。
componentWillUpdate:
在接收到新的 props 或者 state 以前马上调用。在初始化渲染的时候该方法不会被调用。
componentDidUpdate:
在组件的更新已经同步到 DOM 中以后马上被调用。该方法不会在初始化渲染的时候调用。
componentWillUnmount:
在组件从 DOM 中移除的时候马上被调用。
使用react开发,全部html都写在js文件里,因此开发起来不是很顺畅。推荐一个chrome插件:React Developer Tools