我以前的网站只显示主页时,主页选项卡被点击,然后如果你点击我的导航栏品牌,它说404。这个网站工作的一个创建-React-应用程序与npm开始,但它不工作在这里,也不对建设。我不知道是什么问题的应用程序,也许路由器设置是混乱的,我不知道。我已经链接了应用程序和索引页面,我有路由器设置。如果你需要任何更多的信息,只是问我更多的信息。
谢谢您
索引
import React from 'react';
import ReactDOM from 'react-dom/client';
import { BrowserRouter } from 'react-router-dom'
import App from './App';
import './styles/index.css';
ReactDOM.createRoot(document.getElementById('root')).render(
<React.StrictMode>
<BrowserRouter>
<App />
</BrowserRouter>
</React.StrictMode>
);
应用
import { Routes, Route } from "react-router-dom";
import Navbar from "./components/Navbar";
import About from "./routes/About";
import Contact from "./routes/Contact";
import Home from "./routes/Home";
import Project from "./routes/Project";
const App = () => {
return (
<>
<Navbar />
<Routes>
<Route path="/" element={<Home />}></Route>
<Route path="/about" element={<About />}></Route>
<Route path="/project" element={<Project />}></Route>
<Route path="/contact" element={<Contact />}></Route>
</Routes>
</>
);
};
export default App;
4条答案
按热度按时间fquxozlt1#
1.如果要部署到GitHub,请确保在Github中有一个
"homepage"
条目来表示托管位置。示例:
1.切换到
HashRouter
,因为GitHub页面不支持BrowserRouter
使用的技术。索引
有关更多详细信息,请参阅
create-react-app
文档以了解如何部署到GitHub页面,以及客户端路由的注意事项。62lalag42#
当我使用
gh-pages
时,我在ReactJs中遇到了类似的路由问题。**我的问题:**路由在我的本地系统中运行正常,但当我将Web应用程序部署到
gh-pages
时,无法使用URL直接访问任何页面。ayushjaink8.github.io/cfhelper
工作正常,我也可以从Web应用程序中转到其他页面,但当我直接在URL中键入ayushjaink8.github.io/cfhelper/dashboard
时,它会显示github 404错误页面。***解决方案:**我通过使用
<HashRouter/>
并在package.json中添加homepage标记(如homepage: "/<repository-name>/#"
)解决了上述问题。gh-pages
在其URL路由中也遵循#
规则,所以如果你写ayushjaink8.github.io/cfhelper/#/<any-route-of-your-app>
,它不会显示任何404错误页面。我的代码库中其他的一切都保持不变。我没有使用任何
useHistory()
函数或<BrowserRouter />
或任何其他东西。这个简单的黑客工程适用于所有情况。你的主页不再是
/<repo-name>
,而是变成了/<repo-name>/#
,仅此而已。下面是我的示例代码:
包.json示例代码:
xcitsw883#
//将basename添加到browserRouter组件
20jt8wwn4#
我知道了。是因为网址结构。
https://umair-mirza.github.io/safetyapp/
表示您必须为/safetyapp定义路由
就像这样: