Vant 懒加载是一种性能优化技术,它可以帮助开发者减少页面加载时间,提升用户体验。它的原理是在用户浏览器可视区域内加载图片、视频等内容,而不是一次性将所有内容都加载到浏览器中。
Vant 懒加载的使用方法很简单,只需要在 HTML 中使用
就可以将图片进行懒加载了。当用户浏览器滚动到该图片的位置时,Vant 会根据 imageUrl 的值来下载该图片。此外,Vant 还支持其他类型的内容进行懒加载,例如 。Vant 懒加载还有一些其他的优化选项,例如
v-lazy:throttle="200",这个选项可以帮助开发者减少不必要的请求数量,否则当用户快速地上下滚动时,浏览器会大量发出请求来下载图片。此外,Vant 还有一个
v-lazy:offset="200"选项,它可以帮助开发者在用户浏览器位移 200px 时才开始下载图片。
总之,Vant 懒加载是一种很好的性能优化工具,它能够帮助开发者减少页面的加载时间并改善用户体验。使用 Vant 来进行性能优化是一个很好的选择。
当页面需要加载大量内容时,使用懒加载可以实现延迟加载页面可视区域外的内容,从而使页面加载更流畅。
通过以下方式来全局注册组件,更多注册方式请参考组件注册。
Lazyload
是 Vue
指令,使用前需要对指令进行注册。
import { createApp } from "vue";
import { Lazyload } from "vant";
const app = createApp();
app.use(Lazyload);
// 注册时可以配置额外的选项
app.use(Lazyload, {
lazyComponent: true,
});
将 v-lazy
指令的值设置为你需要懒加载的图片。
<img v-for="img in imageList" v-lazy="img" />
export default {
setup() {
return {
imageList: [
"https://fastly.jsdelivr.net/npm/@vant/assets/apple-1.jpeg",
"https://fastly.jsdelivr.net/npm/@vant/assets/apple-2.jpeg",
],
};
},
};
和图片懒加载不同,背景图懒加载需要使用 v-lazy:background-image
,值设置为背景图片的地址,需要注意的是必须声明容器高度。
<div v-for="img in imageList" v-lazy:background-image="img" />
将需要懒加载的组件放在 lazy-component
标签中,即可实现组件懒加载。
// 注册时设置`lazyComponent`选项
app.use(Lazyload, {
lazyComponent: true,
});
<lazy-component>
<img v-for="img in imageList" v-lazy="img" />
</lazy-component>
参数 | 说明 | 类型 | 默认值 |
---|---|---|---|
loading | 加载时的图片 | string | - |
error | 错误时的图片 | string | - |
preload | 预加载高度的比例 | string | - |
attempt | 尝试次数 | number | 3
|
listenEvents | 监听的事件 | string[] | scroll 等 |
adapter | 适配器 | object | - |
filter | 图片 URL 过滤 | object | - |
lazyComponent | 是否能懒加载模块 | boolean | false
|
更多内容请参照:vue-lazyload 官方文档
由于 Lazyload 组件在注册时可以传入一些配置项,所以我们不会自动注册 Lazyload 组件,需要手动进行注册:
const app = Vue.createApp();
app.use(vant.Lazyload, {
lazyComponent: true,
});
介绍Sticky 组件与 CSS 中position: sticky属性实现的效果一致,当组件在屏幕范围内时,会按照正常的布局排列,当组件滚出屏幕范...
升级步骤1. 升级 Vue 3Vant 3 是基于 Vue 3 开发的,在使用 Vant 3 前,请将项目中的 Vue 升级到 3.0 以上版本。2. 处理不兼容更...
介绍弹出层容器,用于展示弹窗、信息提示等内容,支持多个弹出层叠加展示。实例演示引入通过以下方式来全局注册组件,更多注册方...
介绍时间选择器,支持日期、年月、时分等维度,通常与弹出层组件配合使用。实例演示引入通过以下方式来全局注册组件,更多注册方...