Javascript Next.JS——getInitialProps通过ContextProvider将道具和状态传递给子组件
我在Javascript Next.JS——getInitialProps通过ContextProvider将道具和状态传递给子组件,javascript,reactjs,next.js,Javascript,Reactjs,Next.js,我在\u App.js中使用getInitialProps()获取一些api数据,我想通过React上下文将这些数据作为道具传递给我的其他组件。我想通过构造函数用state初始化上下文提供程序 首先,我通过createContext()初始化上下文 config/Context.js: 从“react”导入{createContext}; const Context=createContext(); 导出默认上下文在ContextProvider.js中,您忘记将值传递给Context.Pro
\u App.js
中使用getInitialProps()
获取一些api数据,我想通过React上下文将这些数据作为道具传递给我的其他组件。我想通过构造函数用state初始化上下文提供程序
首先,我通过createContext()
初始化上下文
config/Context.js
:
从“react”导入{createContext};
const Context=createContext();
导出默认上下文
在ContextProvider.js
中,您忘记将值传递给Context.Provider
import React, { Component } from 'react';
import Context from '../config/Context';
class ContextProvider extends Component {
constructor(props) {
super(props);
this.state = {
filters: {
active: true,
headerActive: false
}
};
}
render() {
const { value } = this.props
return (
<Context.Provider value={ value }>
{this.props.children}
</Context.Provider>
);
}
}
export default ContextProvider;
import React,{Component}来自'React';
从“../config/Context”导入上下文;
类ContextProvider扩展组件{
建造师(道具){
超级(道具);
此.state={
过滤器:{
主动:对,
headerActive:错误
}
};
}
render(){
const{value}=this.props
返回(
{this.props.children}
);
}
}
导出默认上下文提供者;
谢谢!我完全错过了。