【vue】组件使用Deferred特性
生活随笔
收集整理的這篇文章主要介紹了
【vue】组件使用Deferred特性
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
延遲加載組件
defer的意思是"延遲",所以deferred對象的含義就是"延遲"到未來某個點再執行。
<template>
<div>
<h2>I'm an heavy page</h2>
<template v-if="defer(2)">
<Heavy v-for="n in 10" :key="n"/>
</template>
<Heavy v-if="defer(3)" class="super-heavy" :n="9999999"/>
</div>
</template>
<script>
import Defer from '@/mixins/Defer'
export default {
mixins: [
Defer()
]
}
</script>
混合
export default function (count = 10) {
return {
data () {
return {
displayPriority: 0
}
},
mounted () {
this.runDisplayPriority()
},
methods: {
runDisplayPriority () {
const step = () => {
requestAnimationFrame(() => {
this.displayPriority++
if (this.displayPriority < count) {
step()
}
})
}
step()
},
defer (priority) {
return this.displayPriority >= priority
}
}
}
}
延遲組件加載對性能提升有很大的幫助
總結
以上是生活随笔為你收集整理的【vue】组件使用Deferred特性的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: css3 unset属性
- 下一篇: c#微信公众号开发一----基本设置,服