我正在将 React 添加到现有的 web 应用程序中。现在,我选择性地替换页面的某些部分,在不同的 div 中呈现不同的组件。出于这个原因,我没有一棵挂在所有组件上的树。我想使用一个上下文提供程序在所有这些组件之间共享上下文信息,但由于我没有一棵树,我不能让它们都挂在同一个上下文提供程序上。
有没有办法使用这样定义的默认上下文?
const MyContext = React.createContext(some_data);
并且没有提供者挂起哪些组件,而只有消费者?
<MyContext.Consumer>...</MyContext.Consumer>
它适用于默认值,但是我不知道如何更改此默认上下文的值。
我的理解是否正确,这适用于所有从供应商处挂靠的消费者?或者有没有办法以编程方式设置默认上下文的值?还有另一种方法可以解决这个问题吗?