Skip to main content

React 状态提升

任何可变数据应当只有一个相对应的唯一“数据源”,所有组件的数据都是来自于他们的父辈组件,也都是由父辈组件来统一存储和修改,再传入子组件当中,体现了 React 的单向数据流的设计思想

示例

如果两个子组件需要利用到对方的状态的话,那么这个时候我们就需要使用到状态提升,具体的做法就是把两个子组件的状态写到它们的父组件当中,然后父组件把状态传递到子组件的 props 中去,这样子组件也相当于有状态。父组件相当于是数据源,这样的话,子组件是没有控制权的,那么如果之前子组件的 state 是受到控制的怎么办呢?就像我们之前说到的受控组件一样