当前位置: 首页 > Web前端 > vue.js

vue路由参数改变刷新当前页面

时间:2023-03-31 22:41:24 vue.js

通过this.$router.replace改变当前页面的路由地址(单纯改变页面地址页面不刷新)结合this.reload()刷新当前页面通过this.$route.query。cart_ids获取当前路由参数,在接口中取出需要去除的参数。过滤掉路由参数,去掉参数赋值(为了过滤方便,我把字符串转成数组拆分,数组过滤数组,过滤完记得切回字符串join)this.$router.replace({name:"submit_order",query:{car??t_ids,//过滤后的参数add_type:this.$route.query.add_type}},()=>{this.reload();//刷新页面})4.使用this.reload()需要先在父组件中定义(可以自己做)exportdefault{provide(){return{reload:this.reload}}},data(){isReloadAlive:true},方法:{reload(){this.isReloadAlive=false;this.$nextTick(function(){this.isReloadAlive=true;})}sub}/使用组件时需要注册exportdefault{name:"submit_order",inject:['reload'],data(){...}}不建议使用一些强制刷新的方式,会导致页面空白,用户体验不好,刚接触vue,有没有更好的解决办法,欢迎留言粘贴代码