React组件中不要绑定匿名函数

在React的组件声明周期中会根据props是否发生了变化去确定是否对组件进行更新。
如果使用匿名函数,如下:

<Button onPress={() => {this.onChange(item);}}></Button>

这时候就算Button组件定义使用的是PureComponent,Button组件也会在父组件重新render时进行更新。
这是为什么呢?
因为父组件在重新render的时候会去重新组件上的每个值,因为我们使用的是匿名函数,每次都会重新定义一个。当然传递到子组件时就不是原来的函数了。
所以尽量避免使用匿名函数,从而造成不必要的性能问题。

欢迎分享本文,转载请保留出处:前端ABC » React组件中不要绑定匿名函数

赞 (3)
分享到:更多 ()

发表评论 0