react-router-dom多路由共用一个组件时,切换页面地址,页面不刷新的问题

当多个路由使用同一个组件的时候,切换路由的时候,页面组件不重新构建,页面也不刷新
当切换路由的时候,只是重新render,并不重新构建,如果需要路由切换的时候,组件重新构建,重新完成一次生命周期,则需要给组件加上key

路由不需要修改,我们只需要修改组件,给组件加上key,让router的path属性(params)指向组件的key,就可以实现,组件的重构

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

这里的props.location.pathname就是routerpath属性的值,这样就实现了,routerpath属性指向组件的key

这样切换路由的时候,即可完成组件的刷新(重构)

    原文作者:dragonishare
    原文地址: https://segmentfault.com/a/1190000017410974
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞