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 相关文章推荐
js 对象是否存在判断
Jul 15 Javascript
JavaScript子窗口ModalDialog中操作父窗口对像
Dec 11 Javascript
Jquery获取复选框被选中值的简单方法
Jul 04 Javascript
JavaScript函数详解
Nov 17 Javascript
javascript框架设计读书笔记之模块加载系统
Dec 02 Javascript
JS实现的仿QQ空间图片弹出效果代码
Feb 23 Javascript
基于BootStrap Metronic开发框架经验小结【三】下拉列表Select2插件的使用
May 12 Javascript
基于jQuery实现仿微博发布框字数提示
Jul 27 Javascript
js实现小窗口拖拽效果
Dec 03 Javascript
创建echart多个联动的示例代码
Nov 23 Javascript
elementUI中Table表格问题的解决方法
Dec 04 Javascript
JavaScript写个贪吃蛇小游戏(超详细)
Mar 17 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
火车头采集器3.0采集图文教程
2007/03/17 PHP
ThinkPHP CURD方法之data方法详解
2014/06/18 PHP
windows server 2008/2012安装php iis7 mysql环境搭建教程
2016/06/30 PHP
php 输出缓冲 Output Control用法实例详解
2020/03/03 PHP
js中将多个语句写成一个语句的两种方法小结
2007/12/08 Javascript
自己的js工具_Form 封装
2009/08/21 Javascript
JavaScript 事件系统
2010/07/22 Javascript
jQuery语法总结和注意事项小结
2012/11/11 Javascript
jquery实现像栅栏一样左右滑出式二级菜单效果代码
2015/08/24 Javascript
AngularJS入门教程之服务(Service)
2016/07/27 Javascript
JS中BOM相关知识点总结(必看篇)
2016/11/22 Javascript
基于BootstrapValidator的Form表单验证(24)
2016/12/12 Javascript
浅谈Vue2.0父子组件间事件派发机制
2018/01/08 Javascript
Angular事件之不同组件间传递数据的方法
2018/11/15 Javascript
nodejs npm错误Error:UNKNOWN:unknown error,mkdir 'D:\Develop\nodejs\node_global'at Error
2019/03/02 NodeJs
Vue数据驱动表单渲染,轻松搞定form表单
2019/07/19 Javascript
JS实现小米轮播图
2020/09/21 Javascript
[03:40]DOTA2抗疫特别篇《英雄年代》
2020/02/28 DOTA
Python中的异常处理简明介绍
2015/04/13 Python
Python 多核并行计算的示例代码
2017/11/07 Python
python实现逆序输出一个数字的示例讲解
2018/06/25 Python
在python中list作函数形参,防止被实参修改的实现方法
2020/06/05 Python
python如何运行js语句
2020/09/09 Python
Python列表的深复制和浅复制示例详解
2021/02/12 Python
html5自动播放mov格式视频的实例代码
2020/01/14 HTML / CSS
乐高西班牙官方商店:LEGO Shop ES
2019/12/01 全球购物
Java工程师面试集锦之Spring框架
2013/06/16 面试题
给水排水工程专业毕业生推荐信
2013/10/28 职场文书
自立自强的名人事例
2014/02/10 职场文书
搞笑车尾标语
2014/06/23 职场文书
检查机关领导群众路线教育实践活动个人整改措施
2014/10/28 职场文书
出差报告怎么写
2014/11/06 职场文书
2016年优秀党务工作者先进事迹材料
2016/02/29 职场文书
2016年暑期社会实践活动总结报告
2016/04/06 职场文书
PyTorch dropout设置训练和测试模式的实现
2021/05/27 Python
python井字棋游戏实现人机对战
2022/04/28 Python