我目前正在开发一个应用程序,在路由组件中遇到了一个奇怪的错误.

error message picture

当我在网页包中启用"devtool:‘内联源代码映射’"时,我不确定为什么会收到生产错误消息,但本质上我不确定是什么引发了错误.这是我目前的前端设置

import React from 'react';
import { render } from 'react-dom';
import { BrowserRouter as Router, Route } from 'react-router-dom';
import HomePage from './components/Homepage';

render(
  <Router>
    <div> Hello from react </div>
    <Route path="/" element={<HomePage />} /> 
  </Router>,
  document.getElementById('app-portal')
);

通过对<Route path="/" element={<HomePage />} /> 条 comments ,这个应用程序可以运行,但我当然需要为这个应用程序工作的路由...

这是我的Package.json依赖项.

"dependencies": {
    "axios": "^0.26.1",
    "express": "^4.17.3",
    "html-webpack-plugin": "^5.5.0",
    "nodemon": "^2.0.15",
    "path": "^0.12.7",
    "react": "^18.0.0",
    "react-dom": "^18.0.0",
    "react-router": "^6.3.0",
    "react-router-dom": "^6.3.0"
  },
  "devDependencies": {
    "@babel/cli": "^7.7.4",
    "@babel/core": "^7.12.10",
    "@babel/plugin-transform-runtime": "^7.8.3",
    "@babel/preset-env": "^7.16.11",
    "@babel/preset-react": "^7.16.7",
    "@babel/preset-stage-2": "^7.8.3",
    "@babel/register": "^7.7.4",
    "assert": "^2.0.0",
    "babel-core": "^7.0.0-bridge.0",
    "babel-eslint": "^8.2.3",
    "babel-loader": "^8.2.5",
    "babel-plugin-styled-components": "^1.12.0",
    "css-loader": "^6.7.1",
    "eslint": "^4.19.1",
    "eslint-plugin-react": "^7.8.2",
    "file-loader": "^6.2.0",
    "morgan": "^1.10.0",
    "style-loader": "^3.3.1",
    "webpack": "^5.72.0",
    "webpack-cli": "^4.9.2"
  },

有人遇到过类似的问题吗?如果是,它是如何解决的?

推荐答案

正如 comments 中指出的,该应用程序是一个生产版本,因此调试信息被剥离.但在错误日志(log)中,这些都是链接,所以你可以点击它,查看some种形式的代码,看看问题在哪里,抛出错误的代码.

但基于您的代码,我假设错误在于您没有将Route组件渲染为Routes组件.Routes组件处理路由路径匹配,在react-router-dom@6中是必需的.

import React from 'react';
import { render } from 'react-dom';
import { BrowserRouter as Router, Routes, Route } from 'react-router-dom';
import HomePage from './components/Homepage';

render(
  <Router>
    <div>Hello from react</div>
    <Routes>
      <Route path="/" element={<HomePage />} /> 
    </Routes>
  </Router>,
  document.getElementById('app-portal')
);

Javascript相关问答推荐

事件错误:类型错误:无法读取未定义的属性(读取stopPropagation)

如何在不使用类型化数组的情况下将32位浮点数按位转换为整值?

Next.js Next/Image图像隐含性有任何类型-如何修复?

在贝塞尔曲线的直线上找不到交叉点:(使用@Pomax的bezier.js)

当在select中 Select 选项时,我必须禁用不匹配的 Select

如何从一个列表中创建一个2列的表?

在我的html表单中的用户输入没有被传送到我的google表单中

还原器未正确更新状态

有条件重定向到移动子域

如何在不影响隐式类型的情况下将类型分配给对象?

覆盖加载器页面避免对页面上的元素进行操作

一个实体一刀VS每个实体多刀S

为什么可选参数的顺序会导致问题?

postman 预请求中的hmac/sha256内标识-从js示例转换

顶点图使用组标签更新列之间的条宽

不协调嵌入图片

P5.js中矩形内的圆弧

如何压缩图像并将其编码为文本?

在Java脚本中构建接口的对象

当S点击按钮时,我如何才能改变它的样式?