美文网首页RN知识
RN-性能优化 (四)

RN-性能优化 (四)

作者: 精神病患者link常 | 来源:发表于2017-04-25 17:17 被阅读147次

    前人种树后人乘凉
    原文地址

    一、优化Component

    很多人在定义一个class时都会去继承Component,这并没有错,但是如果一个子组建也继承了Component,那么当父组建render时也会导致子组建的render,怎么解决呢?其实很简单只需要我们的子组建去继承PureComponent即可。个人建议自定义的class都可以去继承PureComponent从而避免不必要的render。

    注意子组件需是静态的

    二、优化方法的创建

    内部方法的定义应该使用

    onPress=(()=>{
      do something
    })
    

    避免创建多个fun

    三、善于使用shouldComponentUpdate

    通过shouldComponentUpdate的返回结果我们可以去控制什么时候应该render,什么情况应该render。

    注意静态组件可以直接

    shouldComponentUpdate(){
      return false
    }
    

    四、使用Animated去处理一些简单的动画

    我想应该会有很多小伙伴遇到这样的问题,切换不同的state改变某个view的height/width,是不是很多小伙伴都会用state去控制height/width。并不是说这样是完全不对,只是这样耗费性能,因为你的state的改变会触发render,而对于一个过程来说,这样的render次数是我们不愿意看到的,那该怎么解决呢?其实大家可以使用Animated去代替state,Animated封装了一系列优雅的处理函数,完全可以实现你想要的效果,使用方法官方有介绍

    相关文章

      网友评论

        本文标题:RN-性能优化 (四)

        本文链接:https://www.haomeiwen.com/subject/ednvzttx.html