React组件性能优化

94 阅读1分钟

在react开发过程中,会遇到组件性能优化的问题,小项目可能不会表现的特表明显,在项目较大的情况下,如果不进行性能优化处理,就有可能出现卡顿。

业务场景

在许多公司react的面试中会要求面试者手写或者上机写一个todoList的小案例,在这个案例中,父组件可能需要嵌套多个子组件,在性能优化之前,每当父组件进行更新,子组件不需要更新的情况下,子组件的render函数都会被调用,一旦组件增多,性能上就会出现很大的问题。

优化方案

我们可以在子组件的shouldComponentUpdate生命周期函数进行校验。

shouldComponentUpdate(nextProps,nextState){
    // nextProps表示父组件传递到子组件将要更新的数据对象
    // nextState表示当前组件将要更新的状态

    // content是父组件传递给子组件的数据    if(nextProps.content != this.props.content){        return true        }else {        return false    }  }

如上诉代码所示,如果子组件将要更新的数据与原数据相同,子组件就没有更新的必要,返回falserender函数不再执行,而当子组件将要更新的数据和原数据不同,就必须进行更新,返回true,执行子组件的render函数。

总结

该文章只是指出了优化方案中特别需要注意的,主要目的还是记录学习react的知识点,方便日后学习查看,如有侵权,请联系作者删除,转载请放上链接,谢谢。