ReactNative学习十三-Props和State
props 每一个组件都有可变与不可变的属性,props是不可变属性,当props改变时,组件的绘制方法不会被调用。属性多的时候,可以传递一个对象,语法为{...xx},这是es6的新特性。 statesstates是组件的可变属性,states的改变会触发组件的render函数,react与其他mvvm框架的最大的不同点就是,react 组件可以想象成一个状态机,状态的改变会重绘UI,然后根据 dom diff 算法来绘制UI,而其他的mvvm框架则是对js对象的dirty check(Angularjs)或者defineProperty时指定的回调函数(Emberjs),因此,状态机制与dom diff的存在声称React更快。
refsrefs这个点主要用在上级组件调用下级组件的场景,这个场景非常多见。 componentDidMount组件UI渲染完毕后调用,常用在这种业务场景:调用ajax获得数据后,渲染UI。 state的改变会触发render正如上文中所说,React组件是一个一个状态机,state的改变会改变状态,会触发重绘,对于state的设计是对React组件设计的关键。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |