Vue项目路由刷新的实现代码


Posted in Javascript onApril 17, 2019

当vue单页面需要替换参数并刷新页面时,这个时候使用this.$router.push或this.$router.replace会发现路由改变了,但是页面上的数据并没有实时刷新。在网上找到了以下几种方法,亲测可用:

this.$router.go(0)

在具体页面中,先通过this.$router.push或this.$router.replace替换路由,随后调用this.$router.go(0),页面就会强制刷新,但是该强制刷新与F5刷新效果类似,页面会有空白时间,体验感不好;

provide/inject

首先在app.vue页面中增加如下配置:

<template>
 <div id="app">
  <router-view v-if="isRouterAlive" />
 </div>
</template>

<script>
export default {
 name: 'App',
 data() {
  return {
   isRouterAlive: true
  }
 },
 provide() {
  return {
   reload: this.reload
  }
 },
 methods: {
  reload() {
   this.isRouterAlive = false
   this.$nextTick(() => {
    this.isRouterAlive = true
   })
  }
 }
}
</script>

然后在具体页面中加上inject配置,具体如下:

export default {
  name: 'orderAndRandom',
  
  // 就是下面这行
  inject: ['reload'],
  data() {},
  
  // 省略
 }

加上配置后,在调用this.$router.push或this.$router.replace替换路由后,再新增this.reload()就可以实现页面内数据刷新。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
IE和Firefox在JavaScript应用中的兼容性探讨
Apr 01 Javascript
验证码按回车不变解决方法
Mar 29 Javascript
JS 操作Array数组的方法及属性实例解析
Jan 08 Javascript
jquery实现select选中行、列合计示例
Apr 25 Javascript
JS+CSS实现鼠标滑过时动态翻滚的导航条效果
Sep 24 Javascript
详解javascript new的运行机制
Jan 26 Javascript
利用jQuery实现打字机字幕效果实例代码
Sep 02 Javascript
炫酷的js手风琴效果
Oct 13 Javascript
MUI实现上拉加载和下拉刷新效果
Jun 30 Javascript
vue中七牛插件使用的实例代码
Jul 28 Javascript
关于redux-saga中take使用方法详解
Feb 27 Javascript
小程序实现筛子抽奖
May 26 Javascript
vue cli 3.x 项目部署到 github pages的方法
Apr 17 #Javascript
详解vue开发中调用微信jssdk的问题
Apr 16 #Javascript
怎样使你的 JavaScript 代码简单易读(推荐)
Apr 16 #Javascript
vue微信分享的实现(在当前页面分享其他页面)
Apr 16 #Javascript
在Vue项目中使用snapshot测试的具体使用
Apr 16 #Javascript
vue.js中使用echarts实现数据动态刷新功能
Apr 16 #Javascript
详解vue-cli 脚手架 安装
Apr 16 #Javascript
You might like
PHP实现生成唯一编号(36进制的不重复编号)
2014/07/01 PHP
PHP之预定义接口详解
2015/07/29 PHP
Yii2中添加全局函数的方法分析
2017/05/04 PHP
PHP编程文件处理类SplFileObject和SplFileInfo用法实例分析
2017/07/22 PHP
PHP使用文件锁解决高并发问题示例
2018/03/29 PHP
PHP使用递归按层级查找数据的方法
2019/11/10 PHP
TP5框架实现上传多张图片的方法分析
2020/03/29 PHP
JavaScript传递变量: 值传递?引用传递?
2011/02/22 Javascript
jquery中eq和get的区别与使用方法
2011/04/14 Javascript
编写自己的jQuery插件简单实现代码
2011/04/19 Javascript
JS控件的生命周期介绍
2012/10/22 Javascript
Extjs单独定义各组件的实例代码
2013/06/25 Javascript
获取3个数组不重复的值的具体实现
2013/12/30 Javascript
jQuery函数的第二个参数获取指定上下文中的DOM元素
2014/05/19 Javascript
cocos2dx骨骼动画Armature源码剖析(一)
2015/09/08 Javascript
Jquery zTree 树控件异步加载操作
2016/02/25 Javascript
JavaScript sort数组排序方法和自我实现排序方法小结
2016/06/06 Javascript
基于jQuery实现的Ajax 验证用户名唯一性实例代码
2017/06/28 jQuery
基于jstree使用AJAX请求获取数据形成树
2017/08/29 Javascript
微信小程序使用modal组件弹出对话框功能示例
2017/11/29 Javascript
解决vue js IOS H5focus无法自动弹出键盘的问题
2018/08/30 Javascript
vue+layui实现select动态加载后台数据的例子
2019/09/20 Javascript
jQuery实现获取多选框的值示例
2020/02/07 jQuery
python通过ElementTree操作XML获取结点读取属性美化XML
2013/12/02 Python
Python编程中实现迭代器的一些技巧小结
2016/06/21 Python
浅谈Django REST Framework限速
2017/12/12 Python
Python 数据处理库 pandas 入门教程基本操作
2018/04/19 Python
新加坡时尚网上购物:Zalora新加坡
2016/07/26 全球购物
西班牙宠物用品和食品网上商店:Tiendanimal
2019/06/06 全球购物
教你怎样写好自我评价
2013/10/05 职场文书
公司年会主持词
2014/03/22 职场文书
模范教师材料大全
2014/12/16 职场文书
辩护意见书
2015/06/04 职场文书
物业公司管理制度
2015/08/05 职场文书
2016领导干部廉洁从政心得体会
2016/01/19 职场文书
Python matplotlib绘制雷达图
2022/04/13 Python