我正面临一个问题。我正在尝试使用React Router,但它一直显示一个空白页。下面是我的代码:
App.js:
import React from "react";
import { BrowserRouter as Router, Routes, Route } from "react-router-dom";
import HomePage from "./HomePage";
function App() {
return (
<Router>
<Routes>
<Route path="/" element={<HomePage />} />
</Routes>
</Router>
);
};
export default App;
HomePage.js:
import React from "react";
import {withRouter} from "react-router-dom"
const HomePage = () => {
return <div>hi</div>
}
export default HomePage;
index.js:
import React from "react";
import ReactDom from "react-dom";
import App from './App';
ReactDom.render(<App/>, document.getElementById("root"))
我已经安装了“React Router V6”,谁能告诉我问题是什么?感谢所有的帮助。
6条答案
按热度按时间qrjkbowd1#
使用
zrfyljdw2#
我有完全相同的问题发生在我身上几次。我的代码和你的非常相似。打开项目文件夹中的
package.json
文件,并确保已将react-router-dom
安装在实际项目文件夹中,而不是其父文件夹中。n3schb8v3#
昨晚我也遇到了同样的情况,可能你的项目文件夹中没有安装
react-router-dom
,试试:cd [Project Folder name]
npm i react-router-dom
这对我有用!
8yoxcaq74#
我将react-router-dom包版本降级到^5...对我很有效。
注意:Routes不是此版本的方法
brjng4g35#
我今天遇到了这个问题。经过一些调查,我发现我在ReactJS项目的父文件夹中安装了react-router-dom。
类似这样的“C:\parent_foleder\reactjs_app”,可以打开终端app,cd到parent_folder,然后ls -a查看有没有node_moudles、package.json和package-json.lock;如果parent_folder里有这些东西,直接删除,然后cd到reactjs_app里,再次运行npm i react-router-dom。
nwo49xxi6#
我遇到了同样的问题,因为我使用的是(Create React App)CRA生成的应用程序,并且存在较旧的依赖项,其中之一是
react-router-dom
。如果是这种情况,您可能需要更新依赖项npm update
或
yarn upgrade
这些命令会将项目中的包更新为满足package.json文件中指定版本范围的最新版本。
但是您可以像这样专门更新
react-router-dom
//使用npm
或
//使用Yarn
让我知道什么是有效的,因为这也让我头疼。