[英]warning.js:36 Warning: Failed prop type: The prop `history` is marked as required in `Router`, but its value is `undefined`
[英]Warning: Failed prop type: The prop `history` is marked as required in `Router`, but its value is `undefined`. react-router-dom v^5.2.0
遇到这个反应路由器错误并且很困惑,因为我已经设置了多个这样的反应应用程序并且从未遇到过问题。 我运行了 npm 更新,但仍然有问题。 似乎其他人也有这个问题,但这是以前的版本。 在此先感谢您的帮助!
import ReactDOM from 'react-dom';
import App from './App';
ReactDOM.render(<App />, document.getElementById('root'));
import React from 'react';
import { BrowserRouter as Route, Router, Switch } from 'react-router-dom';
import CompanyDetails from './pages/CompanyDetails';
import Home from './pages/Home';
import UpdateCompany from './pages/UpdateCompany';
const App = () => {
return (
<Router>
<Switch>
<Route exact path='/' component={Home} />
<Route exact path='/companies/:id/update' component={UpdateCompany} />
<Route exact path='/companies/:id' component={CompanyDetails} />
</Switch>
</Router>
);
};
export default App;
index.js:1 警告:失败的道具类型:道具history
在Router
中标记为必需,但其值为undefined
。
Router.js:20 未捕获的类型错误:无法读取未定义的属性“位置”
调试了一下后,我意识到我的导入语句:
import { BrowserRouter as Route, Router, Switch } from 'react-router-dom';
需要是:
import { BrowserRouter as Router, Route, Switch } from 'react-router-dom';
我不确定为什么导入语句的顺序很重要,但如果有人可以向我解释,我将不胜感激! ✨
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.