09.使用vue-lazyload实现图片懒加载

vue-lazyload组件官网:https://www.npmjs.com/package/vue-lazyload

场景一:在有些情况下我们是使用背景图,如下所示,这种情况下如何使用vue-lazyload组件实现图片懒加载。
<li  v-for="(song,index) in sheet.songList" v-bind:key="index">
  <div>
      <span v-bind:style="{backgroundImage: 'url('+ getBackImgUrl(song.songId) +')'}">
  </div>
</li>
  • 1.首先先安装vue-lazyload 插件


  • 2.在main.js中引入vue.lazyload
import VueLazyLoad from 'vue-lazyload'
Vue.use(VueLazyLoad)
  • 3.在使用背景图的地方按照如下修改。
<li  v-for="(song,index) in sheet.songList" v-bind:key="index">
  <div>
      <span v-lazy:background-image = "getBackImgUrl(song.songId)">
  </div>
</li>
场景二:在img标签的src属性引入的图片需要懒加载

未使用懒加载:

  <ul>
      <li v-for="(item, index) in (value)" v-bind:key="index" class="singer_item">
        <img v-bind:src="item.singer_pic" class="singerPic">
        <span class="singer_name">{{item.name}}</span>
      </li>
  </ul>

使用懒加载:

 <ul>
      <li v-for="(item, index) in (value)" v-bind:key="index" class="singer_item">
        <img v-lazy="item.singer_pic" class="singerPic">
        <span class="singer_name">{{item.name}}</span>
      </li>
 </ul>
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 意义:一个页面有很多图片,而首屏出现的图片大概就一两张,那么我们还要一次性把所有图片都加载出来吗?显然这是愚蠢的,...
    An的杂货铺阅读 3,806评论 1 4
  • 响应式布局的理解 响应式开发目的是一套代码可以在多种终端运行,适应不同屏幕的大小,其原理是运用媒体查询,在不同屏幕...
    懒猫_6500阅读 801评论 0 0
  • 基于Vue的一些资料 内容 UI组件 开发框架 实用库 服务端 辅助工具 应用实例 Demo示例 element★...
    尝了又尝阅读 1,176评论 0 1
  • 懒加载 为什么需要懒加载? 像vue这种单页面应用,如果没有应用懒加载,运用webpack打包后的文件将会异常的大...
    littlesiqi阅读 16,298评论 1 8
  • 今天和你谈一下血糖控制问题。如果你血糖控制不好,请往下看。 当自己的血糖控制不好的时候就应该反思自己的生活方式了。...
    一鸣0202阅读 191评论 0 3