当前位置: 首页 > news >正文

vue实现图片懒加载

1、lazy-img.js


export const lazyLoad = {mounted(el, binding) {const observer = new IntersectionObserver((entries) => {entries.forEach(entry => {if (entry.isIntersecting) {// 默认加载网络图片链接el.src = binding.value.srcobserver.unobserve(el) // 停止观察}})}, {threshold: 0.01 // 当图片至少1%可见时触发})observer.observe(el)// 保存observer实例以便后续销毁el._observer = observer},unmounted(el) {if (el._observer) {el._observer.disconnect()delete el._observer}}
}

2、main.js引入

import {lazyLoad} from "@/directives/lazy-img.js";const app = createApp(App)
app.directive("lazy", lazyLoad).mount('#app')

3、组件中使用

// 这是预加载图片
import lazy from '@/assets/lazy.jpg'<img :src="lazy" v-lazy="{src:'真实的图片地址'}">
http://www.sczhlp.com/news/14057/

相关文章:

  • CCBC16 YC2.0队 未完赛总结
  • C#自学笔记:特性
  • 2025.8.17打卡
  • GAS_Aura-Globe Progress Bar
  • 最小生成树
  • 基于74HC595的动态数码管设计
  • MediaCodec使用之编码为MP4(四)
  • 使用Saga模式构建弹性航班预订工作流
  • 异步编程踩坑——服务端停止阻塞
  • 邮件礼仪
  • 数据结构之二分查找法
  • IEC60730认证
  • 算法入门排序算法:插入排序
  • 20250817 之所思 - 人生如梦
  • 在Win11电脑使用Win10的效果展现WPF
  • JS基础三座大山之二一作用域和闭包(1)
  • 36岁大龄剩男的我,在想些什么?
  • Python面向对象高级
  • HK相机模块封装
  • 找加密入口的方法二,跟堆栈
  • 汽车换防冻液应该是个很简单的事情啊
  • ceshi
  • 25-暑期-来追梦noip-卷4
  • 软考系统分析师每日学习卡 | [日期:2025-08-17] | [今日主题:规范化理论-模式分解]
  • 下划线字段在golang结构体中的应用
  • 【ganesha】share reservation原理
  • MS建模 - lhW
  • 8.17做题随记
  • Android Camera性能分析 - 从Trace统计预览Buffer Path各层帧率
  • 2025 暑假集训 Day12