首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >正在从Url中删除查询字符串参数

正在从Url中删除查询字符串参数
EN

Stack Overflow用户
提问于 2017-07-21 17:52:55
回答 2查看 15.7K关注 0票数 9

来自AngularJS的我认为这在Vue.js 2中也很简单。但在Vue中,这似乎是很难设计的。

在AngularJS中,我可以执行此$location.search('my_param', null);操作,这将有效地将https://mydomain.io/#/?my_param=872136转换为https://mydomain.io/#/

在Vue中,我尝试过this.$router.replace('my_param',null);,但它只能执行https://mydomain.io/#/?my_param=872136 -> https://mydomain.io/#/my_param,留下空的my_param

在Vuejs2中有没有从Url中删除查询参数的功能?我应该求助于普通的JS来实现这一点吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-07-21 18:24:32

router.replace()将通过从浏览器历史堆栈中删除当前URL来导航,并将其替换为您传递给它的参数路由。

实际的语法是router.replace(url_location, onComplete, onAbort)

您正在做的是router.replace(my_param, null),它将从历史堆栈中删除当前URL并将其替换为'my_param',对于onComplete回调,您将传递一个null

所以你可以这样做:

代码语言:javascript
复制
this.$router.replace('/')

有关programatic navigation的更多信息

票数 13
EN

Stack Overflow用户

发布于 2021-07-08 06:28:14

在有多个查询参数的情况下,删除其中一个参数的正确方法是:

代码语言:javascript
复制
const query = Object.assign({}, this.$route.query);
delete query.my_param;
this.$router.replace({ query });
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45234567

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档