uniapp怎么实现图片懒加载

   2025-02-13 9170
核心提示:要实现图片懒加载,你可以使用uniapp提供的IntersectionObserver组件。以下是实现图片懒加载的步骤:在uniapp中创建一个Intersec

要实现图片懒加载,你可以使用uniapp提供的IntersectionObserver组件。以下是实现图片懒加载的步骤:

在uniapp中创建一个IntersectionObserver对象,用于观察图片是否进入可视区域。
// 在页面的onLoad钩子函数中创建IntersectionObserver对象onLoad() {  this.observer = uni.createIntersectionObserver(this)}
在页面中的图片标签上绑定IntersectionObserver对象,并设置图片的初始src为占位图。
<template>  <img :src="https://static.jirixiang.com/image/lazy.gif" class="lazy" original="https://static.jirixiang.com/image/nopic320.png" :data-src="https://static.jirixiang.com/image/lazy.gif" class="lazy" original="https://static.jirixiang.com/image/nopic320.png" @load="onImgLoad" class="lazy-img"></template>
监听IntersectionObserver对象的回调函数,当图片进入可视区域时,将data-src属性的值赋给src属性,实现图片的懒加载。
// 在页面的onReady钩子函数中开始观察图片onReady() {  this.observer    .relativeToViewport()    .observe('.lazy-img', (res) => {      if (res.intersectionRatio > 0) {        const { dataset } = res.target        res.target.src = dataset.src        this.observer.disconnect()      }    })}
在图片加载完成时,将图片的src赋值为真实的图片链接。
methods: {  onImgLoad(event) {    const { dataset } = event.target    event.target.src = dataset.src  }}

这样,当图片进入可视区域时,图片的src属性会被替换为真实的图片链接,实现图片的懒加载。

 
 
更多>同类维修知识
推荐图文
推荐维修知识
点击排行
网站首页  |  关于我们  |  联系方式  |  用户协议  |  隐私政策  |  网站留言