跳至正文

react_perf/jsx-no-new-function-as-prop 性能

作用:

阻止当前方法的局部函数用作 JSX 属性的值。

为什么这么做不好?

使用局部定义的函数作为属性的值可能导致意外重建和性能问题。每次父组件重建时都会创建一个函数的新实例,从而导致子组件的重建。这也导致组件的属性未以一致的方式传递,从而使代码更难以维护。

示例:

此规则中**不正确**的代码示例

jsx
<Item callback={new Function(...)} />
<Item callback={this.props.callback || function() {}} />

此规则中**正确**的代码示例

jsx
<Item callback={this.props.callback} />

参考:

以 MIT 许可证发布。