我有一个导入路由器的组件,但它无法工作,并且没有任何错误消息。这些页面没有出现在浏览器上。这是一个类(class)应用程序。由于这个类(class)有点老了,有些东西可能已经过去了。这是我的组件的代码:
import '../common/template/dependencies'
import React from 'react'
import Routes from './Routes'
export default props => (
<div className='wrapper'>
<div className='content-wrapper'>
<Routes />
</div>
</div>
)
执行路由的组件 Routes.js:
import React from 'react'
import {Router, Route , Redirect, hasHistory} from 'react-router'
import Dashboard from '../dashboard/Dashboard'
import BillingCycle from '../billingCycle/BillingCycle'
export default props => (
<Router history={hasHistory}>
<Route path='/' component={Dashboard} />
<Route path='/billingCycles' component={BillingCycle} />
<Redirect from='*' to='/' />
</Router>
)
当我评论上面组件的这一行时,一切正常。
{/*<Routes />*/}
最佳答案
import React from 'react'
import {BrowserRouter as Router, Route, Redirect, Switch} from 'react-router-dom';
import Dashboard from './DashBoard';
import BillingCycle from './BillingCycle'
export default props => (
<Router>
<Switch>
<Route exact path='/' component={Dashboard}/>
<Route exact path='/billingCycles' component={BillingCycle}/>
<Redirect from='*' to='/'/>
</Switch>
</Router>
)
检查您的代码是否在新版本的react-router中提供了hasHistory。 你还应该使用react-router-dom。 希望这有帮助..
关于ReactJS - 关于路由器的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54965826/