reactjs - 如何将上下文数据公开给特定路由
问题描述
我正在使用带有上下文 API 的反应钩子在多个组件之间共享数据并使用到达路由器进行路由。我的代码看起来像这样:
function App() {
return (
<div className="App">
<ContextProvider>
<Router>
<Comp1 path='/comp1' >
<Comp2 path="/"/>
</Comp1>
<Comp3 path="/comp3" />
</Router>
</ContextProvider>
</div>
);
}
在此示例中,任何由ContextProvider公开的数据都将可供所有组件使用。我的问题是,我怎样才能只将上下文暴露给 Comp3 而不是 Comp1 和 Comp2?
注意:我使用的是到达路由器。
解决方案
@Tien Duong,我们和你的想法一样。但事实证明,到达路由器内部通过将组件映射到配置为呈现它们的位置来工作,它甚至不需要 div
有趣的是客户端路由它是如何形成的,他们还说他们会将一些路由道具传递给映射到该位置的组件。
这就像打开你的房子让任何人进入。在这种情况下,隔离在哪里。
推荐阅读
- flutter - 在启用 null 安全性的情况下,如何在 Iterable.firstWhere 中从 orElse 返回 null?
- php - Jenkins + AWS 代理 = 仅在 php-project 的工作中出错,Java-projects 的工作正常:/var/run/docker.sock:connect:permission denied
- linux - 根据特定条件粘贴数据
- java - 在 Selenium 中处理帧时没有取回 TItle
- java - Java 扫描器输入循环在第一次循环后抛出 No such Element 异常
- python - 如何区分pygame中键是按住还是按下?
- javascript - 如何以功能性只读方式添加两个对象的所有属性?
- c# - Process.start 以应用程序和文件名作为变量
- r - “A”=“a”、“B”=“b”等形式的表达式如何从 LETTERS 和字母自动构造?
- docusignapi - deliveryMethod 有效值