我希望从子目录localhost:3000/test
提供我的应用程序,
因此,路由tab1
和tab2
在localhost:3000/test/tab1
和localhost:3000/test/tab2
为此,我尝试在React basename
中使用Router
。
有效。
但是,仅localhost:3000/tab1
也匹配tab1
组件,并且与tab2
相同。
如何防止这种情况发生?
import React from "react";
import ReactDOM from "react-dom";
import {
BrowserRouter as Router,
Route,
Switch,
Redirect,
Link
} from "react-router-dom";
import "./styles.css";
function App() {
return (
<Router basename="/test">
<Switch>
<Route path="/tab1" render={props => <div>Hello</div>} />
<Route path="/tab2" render={props => <div>Hi</div>} />
</Switch>
</Router>
);
}
const rootElement = document.getElementById("root");
ReactDOM.render(<App />, rootElement);
答案 0 :(得分:0)
路由器基本名称是为react-router的Link组件而不是Route组成的。
<Link to="/tab1"/>
// <a href="/test/tab1">
答案 1 :(得分:0)
只要react-router不支持此功能,您就需要使用
<q-card v-ripple class="my-box cursor-pointer q-hoverable">
<span class="q-focus-helper"></span>
<q-card-section>
...
</q-card-section>
</q-card>