React 组件优化

  • 属性传递优化

  • 多组件优化

  • key

属性传递

Example

import React from 'react'

class App extends React.Component{
   constructor(props){
      super(props)
      this.state = {
        num:1
      }
   }
   handleClick(){
     this.setState({
       num:this.state.num+1
     })
   }
   render(){
     return(
       <div>
         <h2>App</h2>
         <button onClick={this.handleClick.bind(this)}>b1</button>
         <button onClick={()=>this.handleClick()}>b2</button>
       </div>
     )
   }
}

export default App;

此处的性能优化点在于onClick所触发的函数,是想在JavaScript中,如下

所以在这函数会重复的生成,导致重复render,这个地方就是要优化的点,优化方法如下

这样就是通过在构造函数里声明。不会在每次render的时候重复生成。这个是因为类通过构造函数实例化,在constructor里进行绑定,只用生成一次,后面就可以直接调用。

组件数据传递

每次对Demo进行数据传递的时候都会生成一个新的对象

传递数据时,不要全部state都传递过去,需要哪些数据传递哪些数据

最后更新于

这有帮助吗?