vue 监听窗口变化对页面部分元素重新渲染操作


Posted in Javascript onJuly 28, 2020

问题

在处理页面重新渲染时通常的做法是:

用vue-router重新路由到当前页面,页面是不进行刷新的

采用window.reload(),或者router.go(0)刷新时,整个浏览器进行了重新加载,闪烁,体验不好

使用 v-if 重新渲染部分组件或容器

需要重新渲染的内容

<div v-if="render">
 ...
</div>

vue 监听窗口大小发生改变

使用 window.addEventListener() 添加 resize 事件监听窗口变化

new Vue({
 el: '#app',
 data() {
  return { render: true }
 },
 mounted() {
  window.addEventListener('resize', this.reload)
 },
 beforeDestroy() {
  window.removeEventListener('resize', this.reload)
 },
 methods: {
  reload() {
   // 重新渲染
   this.render = false
   this.$nextTick(() => {
    this.render = true
   })
  }
 }
})

补充知识:vue同一个路由,但参数发生变化,页面不刷新的问题(vue监听路由参数变化重新渲染页面)

我就废话不多说了,大家还是直接看代码吧~

watch: {
 $route: function(newVal, oldVal) {
  console.log(oldVal); //oldVa 上一次url
  console.log(newVal); //newVal 这一次的url
  if (newVal != oldVal) {
   this.loading();//重新调用加载函数
  }
 }
}

以上这篇vue 监听窗口变化对页面部分元素重新渲染操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript实现的listview效果
Apr 28 Javascript
JS 自定义带默认值的函数
Jul 21 Javascript
jquery maxlength使用说明
Sep 09 Javascript
javascript动画对象支持加速、减速、缓入、缓出的实现代码
Sep 30 Javascript
jQuery学习笔记之jQuery.fn.init()的参数分析
Jun 09 Javascript
浅谈JSON和JSONP区别及jQuery的ajax jsonp的使用
Nov 23 Javascript
javascript面向对象之共享成员属性与方法及prototype关键字用法
Jan 13 Javascript
javascript 四十条常用技巧大全
Sep 09 Javascript
浅谈Node.js:fs文件系统模块
Dec 08 Javascript
Echarts基本用法_动力节点Java学院整理
Aug 11 Javascript
Vue学习之组件用法实例详解
Jan 06 Javascript
Vuex实现购物车小功能
Aug 17 Javascript
JavaScript文档加载模式以及元素获取
Jul 28 #Javascript
javascript实现贪吃蛇小游戏
Jul 28 #Javascript
Element DateTimePicker日期时间选择器的使用示例
Jul 27 #Javascript
Js图片点击切换轮播实现代码
Jul 27 #Javascript
在vue中实现echarts随窗体变化
Jul 27 #Javascript
Vue组件跨层级获取组件操作
Jul 27 #Javascript
vue 解决兄弟组件、跨组件深层次的通信操作
Jul 27 #Javascript
You might like
一个PHP+MSSQL分页的例子
2006/10/09 PHP
一个颜色轮换的简单例子
2006/10/09 PHP
剖析 PHP 中的输出缓冲
2006/12/21 PHP
PHP实现chrome表单请求数据转换为接口使用的json数据
2021/03/04 PHP
让JavaScript 轻松支持函数重载 (Part 1 - 设计)
2009/08/04 Javascript
js截取固定长度的中英文字符的简单实例
2013/11/22 Javascript
浅析JQuery UI Dialog的样式设置问题
2013/12/18 Javascript
JS 屏蔽按键效果与改变按键效果的示例代码
2013/12/24 Javascript
JavaScript中使用Math.PI圆周率属性的方法
2015/06/14 Javascript
AngularJS过滤器详解及示例代码
2016/08/16 Javascript
jstree创建无限分级树的方法【基于ajax动态创建子节点】
2016/10/25 Javascript
angularJS之$http:与服务器交互示例
2017/03/17 Javascript
Vuejs实现带样式的单文件组件新方法
2017/05/02 Javascript
jQuery实现页码跳转式动态数据分页
2017/12/31 jQuery
如何在vue里添加好看的lottie动画
2018/08/02 Javascript
jQuery Migrate 插件用法实例详解
2019/05/22 jQuery
vue语法自动转typescript(解放双手)
2019/09/18 Javascript
vue路由拦截器和请求拦截器知识点总结
2019/11/08 Javascript
JS实现音乐导航特效
2020/01/06 Javascript
原生JS实现贪吃蛇小游戏
2020/03/09 Javascript
vue2.0 解决抽取公用js的问题
2020/07/31 Javascript
vue集成openlayers加载geojson并实现点击弹窗教程
2020/09/24 Javascript
[46:55]Ti4 冒泡赛第二轮 LGD vs C9
2014/07/14 DOTA
Python3 模块、包调用&amp;路径详解
2017/10/25 Python
Python基于回溯法解决01背包问题实例
2017/12/06 Python
Tensorflow实现AlexNet卷积神经网络及运算时间评测
2018/05/24 Python
Python 实现某个功能每隔一段时间被执行一次的功能方法
2018/10/14 Python
详解Ubuntu16.04安装Python3.7及其pip3并切换为默认版本
2019/02/25 Python
Django 创建/删除用户的示例代码
2019/07/24 Python
容易被忽略的Python内置类型
2020/09/03 Python
应用艺术毕业生的自我评价
2013/12/04 职场文书
旅游活动总结
2014/08/27 职场文书
运动与健康自我评价
2015/03/09 职场文书
2015年煤矿工作总结
2015/04/28 职场文书
经费申请报告范文
2015/05/18 职场文书
祝福语集锦:朋友新店开业祝福语
2019/12/10 职场文书