【发布时间】:2018-03-17 01:40:56
【问题描述】:
为了避免重新渲染,我们应该将绑定的方法传递给示例按钮组件而不调用
例如。
<MyButton onClick={this.myOnClick} />
我想创建通用组件,它作为下一个道具将参数传递给 myOnClick 方法,但我希望能够传递未知数量的元素。
其中一个解决方案是传入另一个 args 的 props 数组,但是当我在 render 方法中创建新数组时,会在 MyButton 组件中调用 update。
<MyButton onClick={this.myOnClick} onClickArgs={[‚first’, {s: ’second’}, ’third']} />
当然,我可以在构造函数中创建数组,但我在数据数组的 .map() 中渲染了 MyButtons,我必须将数据从数组传递到 args。
最有趣的解决方案是将 args 数组解析为 JSON ????
【问题讨论】:
-
你有什么问题?
-
如何将数组作为属性传递以避免重新渲染,或者将带参数的方法传递给孩子?
-
另外,如果您担心重新渲染代价高昂,那么您应该将组件拆分为更小的组件。然后你可以在你想要控制的部分中使用
shouldComponentUpdate。
标签: reactjs