美文网首页
React状态提升

React状态提升

作者: 灭绝小师弟 | 来源:发表于2020-03-29 13:43 被阅读0次

    通常,多个组件需要反映相同的变化数据,这时通常将共享状态提升到最近的共同父组件中去。

    在 React 应用中,任何可变数据应当只有一个相对应的唯一“数据源”。通常,state 都是首先添加到需要渲染数据的组件中去。然后,如果其他组件也需要这个 state,那么可以将它提升至这些组件的最近共同父组件中,应当依靠自上而下的数据流,而不是尝试在不同组件间同步 state。

    虽然提升 state 方式比双向绑定方式需要编写更多的“样板”代码,但带来的好处是,排查和隔离 bug 所需的工作量将会变少。由于“存在”于组件中的任何 state,仅有组件自己能够修改它,因此 bug 的排查范围被大大缩减了。此外,也可以使用自定义逻辑来拒绝或转换用户的输入。

    如果某些数据可以由 props 或 state 推导得出,那么它就不应该存在于 state 中。

    当在 UI 中发现错误时,可以使用React 开发者工具来检查问题组件的 props,并且按照组件树结构逐级向上搜寻,直到定位到负责更新 state 的那个组件。

    相关文章

      网友评论

          本文标题:React状态提升

          本文链接:https://www.haomeiwen.com/subject/wnnyuhtx.html