React Native细节知识点总结<二>
1.关于React Native导出组件的export default和export的问题:
一个文件只能有一个export default,可以有多个export
export class Template{} export class AnotherTemplate{}
文件的引用:
import {Template,AnotherTemplate} from './components/Templates';
使用export default的引入:
import Template from './components/Templates';
注意:有default和没有default的区别在于:有default在引用时可以自定义名称,而没有default时需要使用{}括起来且名称必修和class名称一致
2.React Native 性能优化:
1>PureComponent:
在定义一个class时都会去继承Component,这并没有错,但是如果一个子组建也继承了Component,那么当父组建render时也会导致子组建的render,怎么解决呢?其实很简单只需要我们的子组建去继承PureComponent即可。个人建议自定义的class都可以去继承PureComponent从而避免不必要的render。
2>方法action用箭头=>
3> 通过shouldComponentUpdate的返回结果我们可以去控制什么时候应该render,什么情况应该render。
4>使用listview我们可以设置首次render时要渲染的ui数量,这样一定程度上优化了首次进入页面时所需要的渲染时间(renderHeader/pagesize)
5>把网络请求放在次方法中去处理,这样很大程度上可以解决首次进入时的卡顿。
6>使用Animated去处理一些简单的动画.