javascript - React Display Route Container 没有页眉和页脚
问题描述
这是一个反应组件 - 在渲染方法内部,当路径为“/”时渲染 HomeContainer,当路径为“/dashboard”时渲染 DefaultContainer。我遇到的问题是确切的路径。当我在仪表板上时,我不想看到导航或页脚。当路径为“/dashboard”时,在 HomeContainer 中添加确切路径不会呈现 DefaultContainer。在实现这一点时遇到问题。有什么想法吗?
HomeContainer = () => {
return (
<div>
<Navigation />
<Route path="/" component={Home} />
<Route path="/login" render={props => <LogIn {...props} />}/>
<Route path="/register" component={Register} />;
<Footer />
</div>
);
};
DefaultContainer = () => {
return (
<div className="app_container">
<SideNav />
<Route path="/dashboard" component={Dashboard} />
<Route path="/dashboard/recent" component={Recent} />
<Route path="/dashboard/AddNote" component={AddNote} />
<Route path="/dashboard/ToDo" component={ToDo} />
</div>
);
};
render() {
return (
<div>
<BrowserRouter>
<Switch>
<Route path="/" component={this.HomeContainer} />
<AuthRoute path="/dashboard" authed={this.props.auth} component={this.DefaultContainer} />
</Switch>
</BrowserRouter>
</div>
);
}
}
解决方案
如果您将精确添加到 中,您可以修复它<Route path="/" component={this.HomeContainer} />
,也请阅读有关 Switch 的文档,它会找到匹配正则表达式的第一个路由并呈现它,因此您需要查看它的顺序或为每个内部路由添加精确。请记住,开关仅适用于直接孩子,不适用于孩子的孩子
推荐阅读
- django - 如何使用嵌套关系和包含嵌套关系的序列化程序来序列化字段?
- phpspreadsheet - 解析特定 csv 文件时出现异常“PhpOffice \ PhpSpreadsheet \ Reader \ Exception”
- r - R语言中的类多态等价
- sql - 如何在 FoxPro 中使用 SQL Select 添加一个不存在的 NULL 列?
- javascript - React.memo 行为
- unit-testing - 使用 Spock 测试时,无法在 Spring Boot 测试中连接 YAML 配置
- python - calibrateCamera 和 stereoCalibrate 的正确“对象点”应该是什么?
- sql - 用于删除最多 2 个条目的前导零的 SQL 查询
- python - 需要 K-Nearest Neighbors 算法解释
- php - CSS 不适用于包含的 PHP 文件