目录
- 如何清空this.$route.query的值
- mounted
- destroyed
- 改变this.$route.query中的数据
如何清空this.$route.query的值
mounted
定义一个 localStorage 来判断当前是否是query携带参数进来页面的
//如果有当前localStorage isTest 则 清空query if(localStorage.getItem('isTest')){ this.$router.push({ query: {} }) } // if(this.$route && this.$route.query && this.$route.query.id){ //定义一个 localStorage isTest localStorage.setItem('isTest', true) // 这里处理携带进来的参数 }
destroyed
destroyed() { localStorage.removeItem('isTest') }
改变this.$route.query中的数据
某些特定情况下想改变this.$route.query中的数据(就是地址栏中的参数),是不能通过直接赋值来改变的,我目前知道的一个办法是下载webpack-merge依赖包实现:
下载:
npm i webpack-merge
引入:
import merge from 'webpack-merge';
修改:
this.$router.push({ query:merge(this.$route.query,{'id':'630'}) })
如果id本来存在的话就是修改id的值,不存在的话就会添加id这个属性,如果想替换所有的属性只要把’id’换成{}就可以。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)