<Router history={createHashHistory()}>
<Route path="/" name="page0" component={Launch}>
<IndexRoute name="page1" component={PageView}/>
<Route path="/page2" name="page2" component={PageView}></Route>
<Route path="/page3" name="page3" component={PageView}></Route>
<Route path="/page4" name="page4" component={PageView}></Route>
</Route>
</Router>
我很多路由页面都指向了 component 为 PageView,但是路由的时候会重用上一个PageView。请问这是什么现象!
为什么page1,page2,page3,page4 使用的是同一个PageView对象呢?
按道理说每次路由PageView对象应该重新实例化一个
pageview的constructor(props) 方法只有第一次才会被调用
后面每次切换都不再调用 所以我认为多次切换路由,使用的PageView是同一个!
但是我需要每次都实例化
这个是 ES6 的 import
实现机制,只要一次 import
到内存之后,之后的所有 import 都会基于这个实例。建议将你这个路由换成 /page/:id
这种形式。