繁体   English   中英

React-管理UI状态

[英]React - Managing UI State

我正在创建一个UI组件,该组件应该能够维护其自己的UI状态,但是可以通过prop从父组件接收数据。 这是常见的情况,那么什么被认为是最佳做法?

示例:目录树组件。 该组件通过prop从父组件接收其结构和文本内容。 但是,树组件应自行管理节点的可见性状态(关闭/扩展)。 我应该复制道具以说明接收/更新的状态,并在其中添加可见性数据吗? 我的印象是从道具初始化状​​态是一种不好的做法。

也许是这样的吗?

https://gist.github.com/acro5piano/4945264cfb0a83b681822332ef351ece

在这种情况下,您无需将道具复制到本地状态:)

如果必须修改或转换道具数据,请尝试使用计算属性:

get someValueFromProps() {
  return this.props.value.replace('foo', 'bar')
}

局部状态越少,组件越好,因为状态会产生错误,除非程序员注意它们。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM