react-router-dom多路由共用一個組件時,切換頁面地址,頁面不刷新的問題

當多個路由使用同一個組件的時候,切換路由的時候,頁面組件不從新構建,頁面也不刷新
當切換路由的時候,只是從新render,並不從新構建,若是須要路由切換的時候,組件從新構建,從新完成一次生命週期,則須要給組件加上key.net

路由不須要修改,咱們只須要修改組件,給組件加上key,讓router的path屬性(params)指向組件的key,就能夠實現,組件的重構code

export default (props)=><User {...props} key={props.location.pathname} />

這裏的props.location.pathname就是routerpath屬性的值,這樣就實現了,routerpath屬性指向組件的keyrouter

這樣切換路由的時候,便可完成組件的刷新(重構)blog

相關文章
相關標籤/搜索