在开发中,有一些页面以图片展示为主,界面不可见部分可能有很多图片用户并不会去看,而且图片消耗的流量十分多,必须要优化。

1、安装vue-lazyload

npm i vue-lazyload -S

2、在main.js配置文件引入

import VueLazyload from 'vue-lazyload'

Vue.use(VueLazyload, {
  preLoad: 1.3, //预加载高度
  error: require('../static/img/error.jpg'), //错误展示图片
  loading: require('../static/img/loading.gif'), //加载等待图片
  attempt: 1 //尝试次数
})

3、使用,将img标签的src换成v-lazy即可

<img v-lazy="http://www.baidu.com/userImg.png" alt="" />

4、如果在不同的页面中显示不同的加载占位图,写法如下

<img v-lazy="{src: item.imgUrl, loading: 'http://xx.com/loading.png'}" alt="" />

5、背景图也可以使用懒加载

v-lazy:background-image="{src: item.imgUrl, error: 'http://xx.com/error.png', loading: 'http://xx.com/loading.png'}"

6、注意

mint-ui已经引入了vue-lazyload,但是在main.js中配置无效。如果需要配置的时候,请重新下载;不需要配置,直接使用v-lazy即可。

 

Logo

前往低代码交流专区

更多推荐