【发布时间】:2020-04-04 18:54:48
【问题描述】:
当我尝试访问例如 localhost:8080/edit/12 之类的 URL 时,我在控制台上收到一个错误,我无法从中访问 id,这是包上使用的版本中的问题吗? json 或在 webpack 配置文件?
组件EditExpensePage:
import React from "react";
const EditExpensePage = (props) => {
return (
<div>This is from EditExpensePage component at {props.match.params.id}</div>
);
};
export default EditExpensePage;
组件路由器AppRouter:
import React from "react";
import { BrowserRouter, Route, Switch } from "react-router-dom";
import EditExpensePage from "../components/EditExpensePage";
const AppRouter = () => (
<BrowserRouter>
<div>
<Header />
<Switch>
<Route path="/edit/:id" component={EditExpensePage} />
</Switch>
</div>
</BrowserRouter>
);
Webpack 配置文件:
const path = require("path");
module.exports = {
entry: "./src/app.js",
output: {
path: path.join(__dirname, "public"),
filename: "bundle.js",
},
module: {
rules: [
{
loader: "babel-loader",
test: /\.js$/,
exclude: /node_modules/,
},
{
test: /\.s?css$/,
use: ["style-loader", "css-loader", "sass-loader"],
},
],
},
devtool: "source-map",
devServer: {
contentBase: path.join(__dirname, "public"),
},
};
【问题讨论】:
标签: webpack webpack-dev-server react-router-dom type-mismatch