我正在研究一个中等大小的应用程序,大约20k行代码分布在20个组件中。应用程序的整个状态涵盖200多个属性,并且为了更快,我将整个状态传递给子组件来构建应用程序。现在,我担心页面的速度。
我想要简短易读的内容。如果我决定传递单个属性,则我将拥有一些具有50个或更多属性的组件。这样做以提高速度是否有意义?
感谢您的帮助
答案 0 :(得分:0)
从模式的角度来看,使用全局状态管理(如redux)在组件之间共享状态要比将状态传递给子级要干净得多。 在其他一些情况下,该解决方案甚至更简单,并且仍然不需要通过状态。
答案 1 :(得分:-1)
是
React仅会渲染自上次渲染以来所做的更改,如果子元素的某些部分尚未修改,则不会将它们重新渲染到DOM。
例如:
<Content
accounts={this.state.accounts}
showBalance={this.state.showBalance}
withdraw={this.state.withdraw}
deposit={this.state.deposit}
current={this.state.current}
depositAmount={this.state.depositAmount}
handleDeposit={this.state.handleDeposit}
handleRm={this.state.handleRm}
amounts={this.state.amounts}
getWithdraw={this.state.getWithdraw}
/>
可以替换为
<Content {...this.state} />