我正在努力反應路由4,試圖猜測爲什麼它只能在主模塊中工作。反應路由器4只在主模塊中工作
我的代碼:
import React from 'react'
import ReactDOM from 'react-dom'
import { BrowserRouter as Router, Switch, Route } from 'react-router-dom'
import Enterprise from './containers/Enterprise'
import Provider from './containers/Provider'
import Home from './containers/Home'
let render =() => {
ReactDOM.render(
<Router>
<div>
<Switch>
<Route exact path="/" component={Home}/>
<Route exact path="/enterprises" component={Enterprise} >
<Route exact path="/providers" component={Provider} />
</Switch>
</div>
</Router>,
document.getElementById('root')
)
}
render()
這將停止儘快工作,我宣佈裏面AppContainer的路線(生活在一個分隔的文件)。像:
AppContainer.js
imports...
class AppContainer extends Component {
shouldComponentUpdate() {
return false
}
render() {
return (
<Header />
<Sidebar />
<main>
<Switch>
<Route exact path="/" component={Home}/>
<Route exact path="/enterprises" component={Enterprise} >
<Route exact path="/providers" component={Provider} />
</Switch>
</main>
<Footer />
)
}
}
export default AppContainer
main.js
我使用的WebPack模塊,而不是使用代碼分裂所以...我很困惑。我在網上搜索了很多這種在分離模塊中工作的例子(即使源代碼在單個文件中顯示)。
任何線索?
是' AppContainer'是否有反應 - 熱載組件?如果是這樣,我認爲這是錯的。在'App'裏面放置' ''AppContainer'和'Router'。 –
heyhugo
是的,我有熱重裝。我在AppContainer內部有一個 組件。其實這是我想呈現我的網頁,所以這就是我想要定義我的路線(或至少通過它們作爲道具,但沒有任何兩次嘗試)。 –
mayid
因此,我禁用HMR,它也不起作用。 – mayid