- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想使用 basename
来分隔组件。我也有全局 url,所以我最终使用了 3 个 BrowserRouter
。这会导致显示多个内容。如果我去/fruit/search,它会同时显示 Homepage
组件和 FruitSearch
组件的内容。我究竟该如何使用多个 BrowserRouter
?
class App extends Component {
render() {
return (
<div>
<Header/>
<BrowserRouter basename='/vegetable'>
<Switch>
<Route exact path='/search' component={VegetableSearch}/>
<Route exact path='/contact/:sellerId' component={ContactSeller}/>
</Switch>
</BrowserRouter>
<BrowserRouter basename='/fruit'>
<Switch>
<Route exact path='/search' component={FruitSearch}/>
<Route exact path='/contact/:sellerId' component={ContactSeller}/>
</Switch>
</BrowserRouter>
<BrowserRouter>
<div>
<Route path='/login' component={Login}/>
<Route path='/register' component={Registration}/>
<Route path='/about' component={AboutUs}/>
<Route path='/faq' component={Faq}/>
<Route path='/' component={Homepage}/>
</div>
</BrowserRouter>
<Footer/>
</div>
);
}
}
export default App;
最佳答案
解决方法很简单。主页正在呈现,因为您的路径同时匹配 /
和 /fruit/search
。为避免这种情况,请使用 exact ,因为它只会在精确路径匹配时才渲染组件。所以更新后的代码将是
<BrowserRouter>
<div>
<Route exact path="/login" component={Login} />
<Route exact path="/register" component={Registration} />
<Route exact path="/about" component={AboutUs} />
<Route exact path="/faq" component={Faq} />
<Route exact path="/" component={Homepage} />
</div>
</BrowserRouter>
关于reactjs - 多个 BrowserRouter 显示多个组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52481536/
我想在我的 React 应用程序中使用 BrowserRouter。我已将我最顶层的组件嵌套在 BrowserRouter 标签中,如图所示: import React from 'react'; i
我读了这个声明: The BrowserRouter should be used when you have a server that will handle dynamic requests (
我想使用 basename 来分隔组件。我也有全局 url,所以我最终使用了 3 个 BrowserRouter。这会导致显示多个内容。如果我去/fruit/search,它会同时显示 Homepag
我是一个新手,无法使用react。我正在关注教程React Tutorial创建注册表单。但这样就已经过时了。我试图通过使用浏览器重定向单击链接来重定向到注册、登录和主页。本教程定义的路线如 cons
我目前在我的 app.js 文件中有这个: 在我的 CompOne 中,我想以编程方式导航到 CompTwo。我知道我可以使用 wind
我正在尝试使用 React Idle Timer 在 15 分钟后转到锁定屏幕。 我遇到的问题是重定向页面。我正在使用带有反应的 Electron 和 react BrowserRouter。因此我不
我正在构建一个 Netflix 克隆应用程序,并且正在使用 react-router-dom v5在不同页面之间切换。但是,当我单击 Link标记 Navbar.jsx ,URL 会发生变化,但相应的
在我的项目中,我必须在不更改 url 的情况下从一个组件导航到另一个组件。为此,我使用了 MemoryRouter这按预期工作。但现在同样的想法应该适用于不同的路线,即 /one和 /two .例如,
我正在尝试使用 npm run build 生成的静态index.html 文件以及react-router。 tl;dr 是;我不需要客户端服务器,我希望通过打开位于构建文件夹中的 index.ht
尝试使用 React,我决定测试 typescript 。 代码: import { BrowserRouter } from 'react-router-dom' import history f
我使用的是 React 路由在线类(class)中的以下代码: import { Router, Route, browserHistory } from 'react-router'; ReactD
我正在使用 React-router 版本 5.5.1,并尝试在我的 index.js 文件中使用它: ./src/index.js 14:8-21 'react-router' does not c
这是我第一次尝试 React。我使用 create-react-app 创建了一个项目,然后对于路由,我使用 React Router V4 for web react-router-dom . 这是
我正在从 React Router v5 升级到 v6。当我运行应用程序时,url 中没有基本名称,也没有加载任何内容,当我将/config2 添加到 url 时,一切都会显示出来。我在使用 v5 B
使用 时出现以下错误react-router-dom 版本 6 : Uncaught Error: Invalid hook call. Hooks can only be called inside
我试图了解 react-router-dom (v5) 包的 BrowserRouter 和 Router 之间的区别以及它们之间的区别下面是我的例子。 文档说: BrowserRouter A th
我是编程新手,如果我阅读官方文档,这会让我有点难以理解。 我正在阅读有关 React Router 4 from here 的内容 在这篇文章中,作者谈论的是 和 这就是他提到的: HashRoute
使用HashRouter,路由在所有情况下都能正常工作,但是当使用BrowserRouter时,刷新页面时会显示错误。 这是我封装在 HashRouter 和 BrowserRouter 下的路由代码
这是我的代码: import React from "react"; import ReactDOM from "react-dom"; import Navbar from "./component
这是我的代码: import React from "react"; import ReactDOM from "react-dom"; import Navbar from "./component
我是一名优秀的程序员,十分优秀!