【vue】页面不刷新情况下修改url参数

需求:

如下图所示,税务月改变,修改对应url中的参数,为了用户体验,不能刷新


截屏2020-08-31下午6.25.54.png

解决办法:

使用history的pushState或者replaceState

window.history.pushState(data, title, targetURL);
@状态对象:传给目标路由的信息,可为空
@页面标题:目前所有浏览器都不支持,填空字符串即可
@可选url:目标url,不会检查url是否存在,且不能跨域。如不传该项,即给当前url添加data
window.history.replaceState(data, title, targetURL);
@类似于pushState,但是会直接替换掉当前url,而不会在history中留下记录

详细代码

const newUrl = this.$route.path + `?benefitsMonth=${this.benefitsMonth}&typeId=${this.typeId}`
window.history.replaceState('', '', newUrl)
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。