Nat*_*ats 2 reactjs create-react-app react-router-dom
我有一个带有几条路线的 create-react-app 。当我时不时地改变分支等时,我注意到路由不起作用。我认为它唯一一次起作用是因为缓存。
下面是我的路线,为了简单起见,我blog用一个简单的p标签替换了路线,因为我开始认为它与我链接的组件有关。
应用程序.tsx
const history = createBrowserHistory();
...
<Router history={history} data-test="component-app">
<Switch>
<Route exact path="/" component={Main} />
<Route path="/blog">
<p>test</p>
</Route>
</Switch
</Router>
Run Code Online (Sandbox Code Playgroud)
主.tsx
import React from "react";
import { Link } from "react-router-dom";
export const Main = () => {
return (
<Link to="/blog">Blog</Link>
)
}
Run Code Online (Sandbox Code Playgroud)
发生的情况如下:
<p>test</p>部分但为什么点击链接后不立即显示测试呢?
我正在使用的版本:
有任何想法吗?
小智 5
为了让 React-Router-Dom 完美工作,请确保您的整个应用程序都用BrowserRouter包装 ,这在您的 indexJS 中是最好的,如下所示,indexJS 文件的示例
import React from "react";
import ReactDOM from "react-dom";
import "./index.css";
import App from "./App";
import { BrowserRouter } from "react-router-dom";
import reportWebVitals from "./reportWebVitals";
ReactDOM.render(
<React.StrictMode>
<BrowserRouter>
<App />
</BrowserRouter>
</React.StrictMode>,
document.getElementById("root")
);
// If you want to start measuring performance in your app, pass a function
// to log results (for example: reportWebVitals(console.log))
reportWebVitals();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6544 次 |
| 最近记录: |