Reactjs 哈希历史不能推送相同的路径;当我更改状态而不是路径名时,新条目将不会添加到历史堆栈中

Reactjs 哈希历史不能推送相同的路径;当我更改状态而不是路径名时,新条目将不会添加到历史堆栈中,reactjs,react-router,Reactjs,React Router,我只想改变州,不想改变路线 <Link to ={{ pathname: "/questions", state: { by: 'me' } }} > Me </Link> 我 到 其他 状态未更改且处于控制台中 警告:哈希历史无法推送相同路径;新条目不会添加到历史堆栈中通过路由导航传递的状态值不会在浏览器刷新中持久化,也不会计入URL中。处理此类场景的更好方法是使用查询参数而不是状态。因此,您的url看起来

我只想改变州,不想改变路线

<Link to ={{
    pathname: "/questions", 
    state: { 
        by: 'me' 
    }
   }} >
 Me
</Link>


其他
状态未更改且处于控制台中
警告:哈希历史无法推送相同路径;新条目不会添加到历史堆栈中

通过路由导航传递的状态值不会在浏览器刷新中持久化,也不会计入URL中。处理此类场景的更好方法是使用查询参数而不是状态。因此,您的url看起来像
/question?by=me
/question?by=other

你可以像这样传下去

<Link to ={{
    pathname: "/questions", 
    search: '?by=others'
   }} >
   others
</Link>

其他

并从
location
获取,如
this.props.location.search
,您可以使用
queryString
包或类似的对其进行解析。通过路线导航传递的状态值不会在浏览器刷新中持久化,也不会计入URL。处理此类场景的更好方法是使用查询参数而不是状态。因此,您的url看起来像
/question?by=me
/question?by=other

你可以像这样传下去

<Link to ={{
    pathname: "/questions", 
    search: '?by=others'
   }} >
   others
</Link>

其他
并从
location
中获取类似
this.props.location.search
,您可以使用
queryString
包或类似工具对其进行解析