当前位置: 首页 > 知识库问答 >
问题:

同时显示多个组件的反应路由器

薛华容
2023-03-14

我尝试有多个路由,所以我可以从一个路由重定向到另一个路由,但是每次我添加另一个路由时,主端都会同时呈现样式和组件,我尝试过lazyLoad、Switch并在路由路径中添加“精确”


import React from 'react';
import {BrowserRouter as Router, Switch, Route} from 'react-router-dom'

import HomePage from './components/homePage/homePage';
 import SignInForm from './components/signInForm/signInForm';


function App() {
  return (
 <div>
  <Router>
  <Switch>
    <Route exact path="/" component={HomePage} />
    <Route exact path="/Sign-In" component={SignInForm} />
  </Switch>
   </Router>
 </div>
  );
}



export default App;

共有1个答案

於英朗
2023-03-14

在您的情况下,我认为您应该使用另一种组件顺序:

<Switch>
    <Route path="/Sign-In" component={SignInForm} />
    <Route path="/" component={HomePage} />
</Switch>

Switch检查从上到下的路由,在您的示例中,两者都是“精确的”,因此它会同时显示两者。

如果保持正确的路径顺序,甚至不需要精确。

 类似资料:
  • I my app.js我已将路线定义为: 在我的中,我有一个链接: 但问题是,当我在aboue path中设置prop'确切={true}时,找不到这个路径 当我没有在上面的路径中设置exact={true}时,在同一页面上呈现路径组件及其下方的路径组件

  • 我正在尝试为react制作PrivateRoute组件。这是我的高阶组件。你能告诉我这个有什么问题吗。

  • 大家好,我不知道发生了什么事。我有以下路线: 只有路径为“/”的路由和路径为“/patient/:id”的路由才有效,其他3条路由只是没有显示与路径对应的组件。 这就是我进入路线的方式。我有一个标题组件,上面有正确的链接。见下文 在头组件中,我从'react router dom'导入{Link};在我声明路由的文件中,我从'react router dom'导入{BrowserRouter,Ro

  • 问题内容: 我们正在创建一个大型的前端应用程序。 我们正在使用React-Redux 我们正在创建一些可重用的组件。 这个问题是关于在同一页面/路由上具有相同的可重用redux react组件的多个实例 问题详细信息: 我们有一个组成部分。绑定到redux状态。 它侦听header属性reducer 。 由于我们在页面上有2个实例,它们都倾向于显示相同的值,因为它们绑定到相同的存储状态属性。 如何

  • 问题内容: 我有两个路线组,“动漫”和“漫画”。这些URL是/ anime/或/manga/,但它们都共享完全相同的控制器和模板 (唯一不同的是用于每个模板的配色方案,但这些颜色是在检查是否通过过滤器的过滤器中确定的)正在查看的特定项目是动漫还是漫画) : 动漫陈述定义: 漫画状态定义: 如您所见,其中已经有很多重复,我一点都不喜欢。随着我不断添加新路线,重复次数只会增加 (您已经可以看到mang

  • 我正在使用Vue router指向src文件中名为components的文件夹中的不同组件,这很奇怪,但所有组件中的模板都是相同的,我导入了文件并以完全相同的方式定义了路由,当然除了我的主文件中的确切组件文件名之外。js文件 这是我的main.js档案 奇怪的是,它们都展示了两个组成部分,家。vue和聚会。vue,其余的根本不显示。有人能帮忙吗?同样,组件模板本身是相同的,以防您漫游,提前感谢)