Reactjs 反应:如何持久化特定于组件的数据
我不熟悉react生态系统,不知道在组件的Reactjs 反应:如何持久化特定于组件的数据,reactjs,Reactjs,我不熟悉react生态系统,不知道在组件的构造函数中基于道具只能初始化一次的数据存储在哪里。 我认为state不是一个好的答案,因为我认为state应该存储的数据会发生变化。 将basedOn函数移到这个组件之外,似乎将组件的内部逻辑移到了别处。 将这些数据直接绑定到此有意义吗 class example extends Component { constructor(props) { //where to store this constVar that initialized o
构造函数中基于道具只能初始化一次的数据存储在哪里。
我认为state不是一个好的答案,因为我认为state应该存储的数据会发生变化。
将basedOn
函数移到这个组件之外,似乎将组件的内部逻辑移到了别处。
将这些数据直接绑定到此
有意义吗
class example extends Component {
constructor(props) {
//where to store this constVar that initialized once base on the this.props
const constVar = basedOn(props)
}
render() {
//how to get the constVar?
}
}
您可以使用类上下文,使用
this.constVar
@daniloprates,感谢您的快速响应。你有这方面的文章吗?或者这个解决方案来自您的实践和经验?daniloprates说得对,您可以简单地将数据存储为this.constVar=basedOn(props)
,但这有点违背了props的要点:如果要这样做,您还应该实现一个组件willreceiveprops()
方法,用于处理基于consvar
的道具确实发生变化时发生的任何情况。无论哪种方式,这种缓存都是一种微观优化,只有当basedOn()
在评测中变得炙手可热时,才应该进行这种优化;100次中有99次,缓存计算实际上并不是一个性能胜利。