成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

vue 監聽窗口變化對頁面部分元素重新渲染操作

瀏覽:101日期:2022-12-26 11:35:24

問題

在處理頁面重新渲染時通常的做法是:

用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 監聽窗口變化對頁面部分元素重新渲染操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Vue
相關文章: