浅谈vue-lazyload实现的详细过程


Posted in Javascript onAugust 22, 2017

本文介绍了浅谈vue-lazyload实现的详细过程,分享给大家,也给自己留个笔记

首先 ,在命令行输入npm install vue-lazyload&&cnpm install vue-lazyload

然后,在main.js里引入这个模块。

import 'VueLazyload' from 'vue-lazyload'
Vue.use(VueLazyload,{
   preload:1.3,//预加载的宽高
   loading:"img的加载中的显示的图片的路径",
   error:"img加载失败时现实的图片的路径",
   attempt:3,//尝试加载的次数
   listenEvents:['scroll','wheel','mousewheel','resize','animationend','transitionend','touchmove'], //你想让vue监听的事件
})

然后在app.vue的template里写一个

<img v-lazy="img.src"/>

然后在app.vue的script里写

data(){
  return {
   img:{
     src:"图片的真是路径"
        }
      }
    }

捋一下思路:

//main.js


// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import App from './App'
import $ from 'jquery'
import 'assets/bootstrap/css/bootstrap.min.css'
import 'assets/bootstrap/js/bootstrap.min'
import router from '@/router/index'
import VueLazyload from 'vue-lazyload'
Vue.use(VueLazyload,{
  preload:1.3,
  loading:require('../static/imgs/ad3.png'),
//解释一下为什么是require('.....url'):因为vue自带webpack打包工具,如果是图片路径就会把他当成模块解析,所以直接引入就好了。
//记得把里面的路径换成自己的哦
  listenEvents:['mousewheel'],
})
//载入vue-router
//import Vue from 'vue'
/* eslint-disable no-new */
new Vue({
 el: '#app',
 router,
 template: '<App/>',
 components: { App }
})


//app.vue


<template>
 <div id="app">
  <navbar></navbar>
  <router-view></router-view>
  <hello></hello>
 <ul>
  <li v-for="item in imgUrl">
   <img v-lazy="item.src" alt="" width="300" height="150"/>
  </li>
 </ul>
 <img v-lazy='img[0].src'/>
 </div>
</template>

<script>
  import hello from './components/Hello'
  import Navbar from '@/components/navBar'
  import route from '@/components/route'
export default {
 name: 'app',
 components:{
  hello,
  Navbar
 },
 data() {
  return {
   imgUrl: [
    {src: require('@/assets/imgs/ad1.png')},//记得把里面的路径换成自己的哦
    {src: require('@/assets/imgs/ad1.png')},//记得把里面的路径换成自己的哦
   ],
   img:[
    {src:require('@/assets/imgs/ad2.png')}//记得把里面的路径换成自己的哦
   ]
  }
 }
}
</script>

<style>
#app {
 font-family: 'Avenir', Helvetica, Arial, sans-serif;
 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale;
 text-align: center;
 color: #2c3e50;
 margin-top: 60px;
} 
</style>

这只是一个简单的vue-lazyload的实现,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
可输入的下拉框
Jun 19 Javascript
文本有关的样式和jQuery求对象的高宽问题分别说明
Aug 30 Javascript
JavaScript简单实现网页回到顶部功能
Nov 12 Javascript
推荐6款基于jQuery实现图片效果插件
Dec 07 Javascript
Javascript实现Array和String互转换的方法
Dec 21 Javascript
浏览器环境下JavaScript脚本加载与执行探析之动态脚本与Ajax脚本注入
Jan 19 Javascript
浅谈js数组和splice的用法
Dec 04 Javascript
Canvas 绘制粒子动画背景
Feb 15 Javascript
Angular.js中angular-ui-router的简单实践
Jul 18 Javascript
react实现点击选中的li高亮的示例代码
May 24 Javascript
vue中get请求如何传递数组参数的方法示例
Nov 08 Javascript
vue项目实现多语言切换的思路
Sep 17 Javascript
关于定制FileField中的上传文件名称问题
Aug 22 #Javascript
React复制到剪贴板的示例代码
Aug 22 #Javascript
Angularjs实现下拉框联动的示例代码
Aug 22 #Javascript
vue.js异步上传文件前后端实现代码
Aug 22 #Javascript
node中koa中间件机制详解
Aug 22 #Javascript
理解javascript async的用法
Aug 22 #Javascript
React Native之TextInput组件解析示例
Aug 22 #Javascript
You might like
php intval的测试代码发现问题
2008/07/27 PHP
兼容各大浏览器带关闭按钮的漂浮多组图片广告代码
2014/06/05 PHP
PHP中执行cmd命令的方法
2014/10/11 PHP
php集成套件服务器xampp安装使用教程(适合第一次玩PHP的新手)
2015/06/03 PHP
PHP jpgraph库的配置及生成统计图表:折线图、柱状图、饼状图
2017/05/15 PHP
ExtJS4 动态生成的grid导出为excel示例
2014/05/02 Javascript
js 通过cookie实现刷新不变化树形菜单
2014/10/30 Javascript
js全选实现和判断是否有复选框选中的方法
2015/02/17 Javascript
jquery.mousewheel实现整屏翻屏效果
2015/08/30 Javascript
js实现浮动在网页右侧的简洁QQ在线客服代码
2015/09/04 Javascript
JS模拟酷狗音乐播放器收缩折叠关闭效果代码
2015/10/29 Javascript
深入分析Javascript事件代理
2016/01/30 Javascript
为什么JavaScript没有块级作用域
2016/05/22 Javascript
值得分享和收藏的xmlplus组件学习教程
2017/05/05 Javascript
基于Vue实例对象的数据选项
2017/08/09 Javascript
Django使用多数据库的方法
2017/09/06 Javascript
vue select二级联动第二级默认选中第一个option值的实例
2018/01/10 Javascript
vue 使用Jade模板写html,stylus写css的方法
2018/02/23 Javascript
用Node编写RESTful API接口的示例代码
2018/07/04 Javascript
js实现无刷新监听URL的变化示例代码详解
2020/06/03 Javascript
Js跳出两级循环方法代码实例
2020/09/22 Javascript
[06:16]《DAC最前线》之地区预选赛全面回顾
2015/01/19 DOTA
Python函数式编程
2017/07/20 Python
PyQt5每天必学之切换按钮
2020/08/20 Python
Python字典常见操作实例小结【定义、添加、删除、遍历】
2019/10/25 Python
使用OpenCV-python3实现滑动条更新图像的Canny边缘检测功能
2019/12/12 Python
Python使用PyQt5/PySide2编写一个极简的音乐播放器功能
2020/02/07 Python
python 解决mysql where in 对列表(list,,array)问题
2020/06/06 Python
python代码区分大小写吗
2020/06/17 Python
如何使用scrapy中的ItemLoader提取数据
2020/09/30 Python
纯CSS绘制漂亮的圆形图案效果
2014/05/07 HTML / CSS
CSS3制作Dropdown下拉菜单的方法
2015/07/18 HTML / CSS
Sperry官网:帆船鞋创始品牌
2016/09/07 全球购物
2015年财务部工作总结
2015/04/10 职场文书
2015暑假实习报告范文
2015/07/13 职场文书
win10电脑右下角输入法图标不见了?Win10右下角不显示输入法的解决方法
2022/07/23 数码科技