当我以编程方式返回时,我的Vue路由器正在删除查询参数

问题描述 投票:0回答:1

我以前在路由参数中传递了所有页面变量(例如#/page/:accountId/:userId),但现在我正在更改为查询参数,因为我建议上述方法不建议使用。我设法使页面作为#/page?accountId=x&userId=y工作,并且能够像以前一样使用$route.push来更改页面。

如果我导航到#/profile?accountId=x&userId=y,然后使用location.history.go(-1)$router.go(-1),那么我将剩下#/page(查询参数已删除)如果我使用浏览器的后退按钮,则会保留查询参数。

我正在使用路由器的默认哈希模式。切换到历史记录会中断我的应用程序,因此不确定是否应该研究该解决方案。

vue.js router history back
1个回答
0
投票

您需要在类似路由​​器的路径中进行推送;

router.push({ path: 'profile', query: { accountId: X, userId: Y } })

此处有更多详细信息:https://router.vuejs.org/guide/essentials/navigation.html

© www.soinside.com 2019 - 2024. All rights reserved.