解决VUE-Router 同一页面第二次进入不刷新的问题


Posted in Javascript onJuly 22, 2020

最近正好遇到一个问题,修改用户的头像,修改后再进入用户主页,发现改了之后即使数据变了。。页面也不会重新渲染。。。

下面提供几种解决方案来给予大家参考:

1. 可以在刷新的页面定义一个参数, 这样每次都会渲染出不同的页面:

route 实例化命名配置:

{
   // 用户信息
   path: '/accountDetail/:randKey',
   name: 'accountDetail',
   component: accountDetail,
   meta: {requiresAuth: true}
 },

跳转 的地方配置:

var chars = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'];
 var maxLength = 15;
    var res = '_jsonpphotochange';
    for (var i = 0; i < maxLength; i++) {
      var id = Math.ceil(Math.random() * 35);
      res += chars[id];
    }
    // res 为随机字符串,下面是跳转:
 this.$router.push('/accountDetail/' + paramsAccount);

2. 可以让全局的页面都重载,这个比较狠冗余也多,慎重点用:

在App.vue下修改:

<template>
 <div id="app" class="app">
  <transition :key="key">
  <router-view class="router-view"></router-view>
  </transition>
 </div>
 </template>
 <script type="text/ecmascript-6">
 // import {mapState} from 'vuex';
 export default {
  name: 'app',
  computed: {
  key() {
   return this.$route.name !== undefined ? this.$route.name + new Date() : this.$route + new Date();
  }
  }
 };
 </script>
// 就是在template下加一对标签<transition></transition> 加上key的属性,不过官网说 如果防止组件的复用就用这个 还是比较推荐这个方法的。

3. watch 来检测路由变化。。缺点是,有时候会莫名出现 点两次的情况,也就是你要跳转会跳转两次。。有人说是进来会执行一次跳转回执行一次,不过我觉得不太像。。希望有能人士指点。。:

watch: {
 '$route' (to, from) {
  this.httpGetUserInfo(); // 这是我ajax获取用户信息的方法
 }
 }
// 这样每次路由执行就会运行这个方法,第一次打开不会运行,你需要用created()方法来执行下ajax方法。

补充知识:vue页面跳转parmas传参之刷新页面参数丢失问题解决方法

说在前面:

今天遇到一个问题,通过vue的parmas传参,跳转到相应页面后,F5刷新传过来的参数就会消失。尝试改成query传参,但由于项目的路由不能带参数,不然刷新会找不到页面。百度了很长时间,尝试了很多次,最后找到了一个方法,记一下,以备以后需要。(主要是实在搞不懂vuex 感觉还是local storage好理解一些。。。)

1.utils文件夹下新建localstorage.js文件

解决VUE-Router 同一页面第二次进入不刷新的问题

2.在需要保存值的文件里引入localstorage.js并通过db.save进行保存数据

解决VUE-Router 同一页面第二次进入不刷新的问题

3.在跳转到的页面引入localstorage.js并通过db.get获取数据

解决VUE-Router 同一页面第二次进入不刷新的问题

以上这篇解决VUE-Router 同一页面第二次进入不刷新的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript 全面解析各种浏览器网页中的JS 执行顺序
Feb 17 Javascript
jQuery生成asp.net服务器控件的代码
Feb 04 Javascript
离开页面时检测表单元素是否被修改,提示保存的js代码
Aug 25 Javascript
Js+Flash实现访问剪切板操作
Nov 20 Javascript
jQuery实现的向下图文信息滚动效果
May 03 Javascript
js获取Get值的方法
Sep 29 Javascript
javascript汉字拼音互转的简单实例
Oct 09 Javascript
基于JS分页控件实现简单美观仿淘宝分页按钮效果
Nov 07 Javascript
mui back 返回刷新页面的实例
Dec 06 Javascript
clipboard在vue中的使用的方法示例
Oct 19 Javascript
js核心基础之闭包的应用实例分析
May 11 Javascript
javascript实现简单留言板案例
Feb 09 Javascript
js实现查询商品案例
Jul 22 #Javascript
vue element 关闭当前tab 跳转到上一路由操作
Jul 22 #Javascript
eslint+prettier统一代码风格的实现方法
Jul 22 #Javascript
解决vue-router 切换tab标签关闭时缓存问题
Jul 22 #Javascript
基于 Vue 的 Electron 项目搭建过程图文详解
Jul 22 #Javascript
浅谈JS for循环中使用break和continue的区别
Jul 21 #Javascript
解决vue 给window添加和移除resize事件遇到的坑
Jul 21 #Javascript
You might like
php 无限级 SelectTree 类
2009/05/19 PHP
php UTF8 文件的签名问题
2009/10/30 PHP
php 连接mssql数据库 初学php笔记
2010/03/01 PHP
细谈php中SQL注入攻击与XSS攻击
2012/06/10 PHP
php实现修改新闻时删除图片的方法
2015/05/12 PHP
laravel框架创建授权策略实例分析
2019/11/22 PHP
会自动逐行上升的文本框
2006/06/30 Javascript
js之WEB开发调试利器:Firebug 下载
2007/01/13 Javascript
Javascript 错误处理的几种方法
2009/06/13 Javascript
JQuery 技巧和窍门整理(8个)
2010/04/22 Javascript
JS 获取浏览器和屏幕宽高等信息的实现思路及代码
2013/07/31 Javascript
解析prototype,JQuery中跳出each循环的方法
2013/12/12 Javascript
JQuery获取与设置HTML元素的内容或文本的实现代码
2014/06/20 Javascript
SuperSlide标签切换、焦点图多种组合插件
2015/03/14 Javascript
超详细的javascript数组方法汇总
2015/11/21 Javascript
详解js数组的完全随机排列算法
2016/12/16 Javascript
移动端触屏幻灯片图片切换插件idangerous swiper.js
2017/04/10 Javascript
Vim快速合并行及vim 将文件所有行合并到一行
2017/11/27 Javascript
详解vue mixins和extends的巧妙用法
2017/12/20 Javascript
vue引入ueditor及node后台配置详解
2018/01/03 Javascript
微信小程序实现语音识别转文字功能及遇到的坑
2019/08/02 Javascript
JavaScript中作用域链的概念及用途讲解
2020/08/06 Javascript
python使用PyGame绘制图像并保存为图片文件的方法
2015/04/24 Python
Python基于Floyd算法求解最短路径距离问题实例详解
2018/05/16 Python
python判断所输入的任意一个正整数是否为素数的两种方法
2019/06/27 Python
django序列化serializers过程解析
2019/12/14 Python
PyTorch中permute的用法详解
2019/12/30 Python
Spartoo西班牙官网:法国时尚购物网站
2018/03/27 全球购物
美国保健品专家:Life Extension
2018/05/04 全球购物
大四自我鉴定范文
2013/10/06 职场文书
最新奶茶店创业计划书
2014/01/25 职场文书
《一件运动衫》教学反思
2014/02/19 职场文书
企业职业病防治方案
2014/05/29 职场文书
2014年安置帮教工作总结
2014/12/11 职场文书
病人家属写给医院的感谢信
2015/01/23 职场文书
详解如何用Python实现感知器算法
2021/06/18 Python