从最近几天开始,我一直在寻找解决这个问题的方法。这里发生的是我想要动态链接。你可以在下面看到:
<Route path="/edit/:username" component={EditExpensePage} />
但是当我转到 /edit/12
时,出现了这个错误:
GET http://127.0.0.1:8080/edit/bundle.js net::ERR_ABORTED
这是我的代码:
import React from 'react';
import { BrowserRouter, Route, Switch, Link, NavLink } from 'react-router-dom';
import ExpenseDashboardPage from '../components/ExpenseDashboardPage';
import AddExpensePage from '../components/AddExpensePage';
import EditExpensePage from '../components/EditExpensePage';
import HelpPage from '../components/HelpPage';
import NotFoundPage from '../components/NotFoundPage';
import Header from '../components/Header';
const AppRouter = () => (
<BrowserRouter>
<div>
<Header />
<Route path="/" component={ExpenseDashboardPage} exact={true} />
<Route path="/create" component={AddExpensePage} />
<Route path="/edit/:username" component={EditExpensePage} />
<Route path="/help" component={HelpPage} />
</div>
</BrowserRouter>
);
export default AppRouter;
最佳答案
您似乎正在加载 bundle.js
具有相对 URL 的文件。
所以当你加载页面时 http://127.0.0.1/Home
(或其他)它解析为 http://127.0.0.1/bundle.js
, 这是正确的。
然而,当您加载页面时 http://127.0.0.1/edit/12
它解析为 http://127.0.0.1/edit/bundle.js
,这是不正确的。
制作<script
标记使用绝对 URL。
关于javascript - React 路由器参数和查询不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48013637/