同时反应两个上下文

时间:2019-01-25 07:51:33

标签: reactjs

你好,我在React中弄混context,我想知道是否有一种方法可以使用static在同一个类中消耗2个上下文。我知道我可以对2个使用者进行操作,并返回其值,返回doc这样的函数,但是我想像在static contextType = HomeContext中一样访问整个类中的两个上下文。有没有办法做这样的事情?:

FormControl.contextType = {
  HomeContext,
  FormContext
}

1 个答案:

答案 0 :(得分:2)

无法使用contextType Api访问多个上下文。相反,您需要使用Render props模式

<HomeContext.Consumer>
   {(homeContext) => (
      <FormContext.Consumer>
         {(formContext) => (
             <YourComponent homeContext={homeContext} formContext={formContext} />
         )}
      </FormContext.Consumer>
   )}
</HomeContext.Consumer>