当内容没有加载完的时候,用户体验不是很好,这时候,可以使用lazyload这个插件,提升用户体验,使用方法特别简单易用
一. vue lazyload插件:
插件地址:https://github.com/hilongjw/vue-lazyload
二. 简单使用实例:
其实这个插件做简单使用的话是很简单的,看官方文档的话反而被误导了,可以先按下边的实例实现简单引用,后边再根据开发文档做扩展。直接对代码开始
1. 安装插件:
1
|
npm install vue-lazyload --save-dev
|
2. main.js引入插件:
import VueLazyLoad from 'vue-lazyload' Vue.use(VueLazyLoad,{ loading:require('common/image/default.png') //这个就是你本地图片的地址 })
3. vue文件中将需要懒加载的图片绑定 v-bind:src 修改为 v-lazy
1
2
3
|
<
img
:src="item.imgurl" style="width: 60px;height: 60px;" />
改成下面的,就可以使用了
<
img
v-lazy="item.imgurl" style="width: 60px;height: 60px;" />
|
三.功能扩展:
图片懒加载的简单效果已经实现了,然后就可以按这开发文档的api进行扩展了:
key | description | default | options |
---|---|---|---|
preLoad | proportion of pre-loading height(预加载高度比例) | 1.3 | Number |
error | src of the image upon load fail(图片路径错误时加载图片) | 'data-src' | String |
loading | src of the image while loading(预加载图片) | 'data-src' | String |
attempt | attempts count(尝试加载图片数量) | 3 | Number |
listenEvents | events that you want vue listen for (想要监听的vue事件) 默认['scroll']可以省略, 当插件跟页面中的动画或过渡等事件有冲突是, 可以尝试其他选项 |
| Desired Listen Events |
adapter | dynamically modify the attribute of element (动态修改元素属性) | { } | Element Adapter |
filter | the image's listener filter(动态修改图片地址路径) | { } | Image listener filter |
lazyComponent | lazyload component | false | Lazy Component |
dispatchEvent | trigger the dom event | false | Boolean |
throttleWait | throttle wait | 200 | Number |
observer | use IntersectionObserver | false | Boolean |
observerOptions | IntersectionObserver options | { rootMargin: '0px', threshold: 0.1 } | IntersectionObserver |
所有评论(0)