context 说白是一个容器,里面可以装很多数据,为程序的多个地方传递数据。
    而这个容器就叫做 上下文。
    即 程序在执行时候可访问的数据容器

    使用 context 对多层组件可以跨越 props,来传递数据。

    主题的数据由上下文来传递
    使用 React.createContext 来创建 Context 对象

    1. const ThemeContext = React.createContext('black');
    2. <ThemeContext.Provider value={this.state.theme}>
    3. <Main />
    4. </ThemeContext.Provider>
    5. <ThemeContext.Consumer>
    6. {
    7. (theme) => <header></header>
    8. }
    9. </ThemeContext.Consumer>

    Context 下有两个 API

    • Provider 供应方
    • Consumer 消费方、使用方