来自 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 参数。
Vuejs2 中是否没有从 Url 中删除查询参数的方法?我应该求助于纯 JS 来实现这一目标吗?
原文由 Marcus 发布,翻译遵循 CC BY-SA 4.0 许可协议
router.replace()
是通过从浏览器历史堆栈中删除当前 URL 并将其替换为您传递给它的参数路由来进行导航。实际语法是
router.replace(url_location, onComplete, onAbort)
。您正在做的是
router.replace(my_param, null)
从历史堆栈中删除当前 URL 并将其替换为'my_param'
并且对于null
onComplete
回调---
所以这样做:
有关 程序化导航 的更多信息