在React.js中,您最好在构造函数中定义方法绑定 像这样:
constructor(props){
this.poo = this.poo.bind(this);
}
它的性能优于渲染方法中的绑定。
那么箭头功能呢
poo = () => {}
它是否也会影响渲染方法的性能?
答案 0 :(得分:2)
是的,它会影响渲染方法的性能。每次呈现组件时都会触发箭头函数(在应用程序的生命周期中多次发生)。
如果您通过props将箭头函数传递给子组件,则会发生最糟糕的事情。它会在父组件的每次更新时收到一个新的prop,这会导致渲染效率低下,特别是如果您的子组件是纯粹的。
你可以在 Cory House 的this文章和 Michele Bertoli - React Design Patterns and Best Practices(第9章,提高应用程序的性能)。