vue 监听窗口变化对页面部分元素重新渲染操作
更新时间:2020年07月28日 08:45:11 作者:lwlcode
这篇文章主要介绍了vue 监听窗口变化对页面部分元素重新渲染操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
问题
在处理页面重新渲染时通常的做法是:
用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 监听窗口变化对页面部分元素重新渲染操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Vue3项目pc端浏览器样式正常但移动端部分样式失效问题的解决方法
这篇文章主要介绍了Vue3项目pc端浏览器样式正常但移动端部分样式失效问题的解决方法,文中通过图文讲解的非常详细,具有一定的参考价值,需要的朋友可以参考下2024-07-07
最新评论