解决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 相关文章推荐
jquery 页面全选框实践代码
Apr 02 Javascript
raphael.js绘制中国地图 地图绘制方法
Feb 12 Javascript
极易被忽视的javascript面试题七问七答
Feb 15 Javascript
使用jQuery Mobile框架开发移动端Web App的入门教程
May 17 Javascript
谈谈JavaScript中的几种借用方法
Aug 09 Javascript
基于MVC5和Bootstrap的jQuery TreeView树形控件(二)之数据支持json字符串、list集合
Aug 11 Javascript
Angular.JS学习之依赖注入$injector详析
Oct 20 Javascript
jquery实现图片列表鼠标移入微动
Dec 01 Javascript
最后说说Vue2 SSR 的 Cookies 问题
May 25 Javascript
详解JavaScript的内存空间、赋值和深浅拷贝
Apr 17 Javascript
修改layui的后台模板的左侧导航栏可以伸缩的方法
Sep 10 Javascript
微信小程序自定义底部弹出框功能
Nov 18 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
收音机另类DIY - 纸巾盒做外壳
2021/03/02 无线电
php.ini save_handler 修改不生效的解决办法
2014/07/22 PHP
Javascript selection的兼容性写法介绍
2013/12/20 Javascript
在js文件中写el表达式取不到值的原因及解决方法
2013/12/23 Javascript
JQuery+Ajax无刷新分页的实例代码
2014/02/08 Javascript
JavaScript中的object转换函数toString()与valueOf()介绍
2014/12/31 Javascript
Javascript的表单验证-提交表单
2016/03/18 Javascript
window.onload绑定多个事件的两种解决方案
2016/05/15 Javascript
node.js中 stream使用教程
2016/08/28 Javascript
深入理解bootstrap框架之入门准备
2016/10/09 Javascript
Angular.JS实现无限级的联动菜单(使用demo)
2017/02/08 Javascript
javascript html5轻松实现拖动功能
2017/03/01 Javascript
在knockoutjs 上自己实现的flux(实例讲解)
2017/12/18 Javascript
Node.js静态服务器的实现方法
2018/02/28 Javascript
Node.js API详解之 readline模块用法详解
2020/05/22 Javascript
vue封装自定义指令之动态显示title操作(溢出显示,不溢出不显示)
2020/11/12 Javascript
[14:21]VICI vs EG (BO3)
2018/06/07 DOTA
python自动化测试之连接几组测试包实例
2014/09/28 Python
django允许外部访问的实例讲解
2018/05/14 Python
python 通过 socket 发送文件的实例代码
2018/08/14 Python
PyQt5+requests实现车票查询工具
2019/01/21 Python
从0开始的Python学习016异常
2019/04/08 Python
Django 实现admin后台显示图片缩略图的例子
2019/07/28 Python
Python中的__init__作用是什么
2020/06/09 Python
PySide2出现“ImportError: DLL load failed: 找不到指定的模块”的问题及解决方法
2020/06/10 Python
python利用tkinter实现图片格式转换的示例
2020/09/28 Python
英国儿童家具专卖店:GLTC
2016/09/24 全球购物
如何在发生故障的节点上重新安装 SQL Server
2013/03/14 面试题
学校领导班子群众路线整改措施
2014/09/16 职场文书
员工工作自我评价
2014/09/26 职场文书
党的群众路线教育实践活动个人整改措施落实情况
2014/11/04 职场文书
2014年行风建设工作总结
2014/12/01 职场文书
房贷工资证明范本
2015/06/12 职场文书
合理缓解职场压力,让你随时保持最佳状态!
2019/06/21 职场文书
Python深度学习之实现卷积神经网络
2021/06/05 Python
Python道路车道线检测的实现
2021/06/27 Python