属性“history”在“Router”中被标记为必需,但其值为“undefined”。在路由器中

2024-04-04

我是 ReactJs 的新手。这是我的代码:

var React = require('react');
var ReactDOM = require('react-dom');
var {Route, Router, IndexRoute, hashHistory} = require('react-router');
var Main = require('Main');
ReactDOM.render(
  <Router history={hashHistory}>
  <Route path="/" component={Main}></Route>
</Router>, document.getElementById('app'));

and compiling it with webpack. Also I added Main component to my aliases. The console throws these errors: I also read these links :

React Router 失败的 prop 'history' 是未定义的 https://stackoverflow.com/questions/42845303/react-router-failed-prop-history-is-undefined

当值未定义时,如何解决历史记录被标记为必需的问题? https://teamtreehouse.com/community/how-do-i-resolve-history-is-marked-required-when-value-is-undefined

升级 React-Router 并用 browserHistory 替换 hashHistory https://stackoverflow.com/questions/37355265/upgrading-react-router-and-replacing-hashhistory-with-browserhistory

并在网上进行了许多搜索,但我无法解决这个问题。 React Router 是版本 4


如果您使用的是react-router v4,您还需要安装react-router-dom。之后,从react-router-dom导入BrowserRouter并将Router切换为BrowserRouter。 v4 似乎改变了一些事情。此外,react-router 文档已经过时了。这是我的工作代码:

import React from 'react';
import ReactDOM from 'react-dom';
import { BrowserRouter, Route } from 'react-router-dom'
import App from './components/App';

ReactDOM.render((
     <BrowserRouter>
          <Route path="/" component={App}/>
     </BrowserRouter>
     ),
     document.getElementById('root')
);

Source https://stackoverflow.com/a/42895076/3943197

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

属性“history”在“Router”中被标记为必需,但其值为“undefined”。在路由器中 的相关文章

随机推荐