在我的 React JS 应用程序中,我在控制台中收到此警告:
browser.js?26d3:49 Warning: <BrowserRouter> ignores the history prop. To use a custom history, use `import { Router }` instead of `import { BrowserRouter as Router }`.
我这样做:
import {BrowserRouter as Router, hashHistory, Switch, NavLink, Route} from "react-router-dom";
render() {
const {t} = this.props;
return (
<Provider store={store}>
<AppContainer>
<Router history={createHistory}>
<div>
如果我在警告中进行上述更改,应用程序将不再运行并抛出错误
其中一个看起来像这样:
AppContainer.dev.js?cd84:95 TypeError: Cannot read property 'pathname' of undefined
我该如何解决这个问题?
提前致谢
最佳答案
这里有两个选择:
答:使用 BrowserRouter
并且简单地不向其传递历史记录:
<Router>
或者
import {BrowserRouter, hashHistory, Switch, NavLink, Route} from "react-router-dom";
...
<BrowserRouter>
B:使用Router
并传递实例化历史记录对象:
import {Router, hashHistory, Switch, NavLink, Route} from "react-router-dom";
const history = createHistory();
...
<Router history={history}>
关于javascript - ReactJS 应用程序的开发控制台中出现警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48884671/