Vue懒加载的使用(后端分页)

再我们开发的过程中可能涉及到的数据量比较小,所以不怎么会出现需要懒加载的情况,但是这个在工作中就是非常非常重要的一个知识点了。懒加载的功能和分页其实是非常像的,就是一次性不会给太多的数据。

懒加载的作用:

当我们没使用懒加载或者分页的时候,访问一个接口,接口是一次性的将所有的数据都返回了,如果数据比较多有七八百条,那么就会导致页面加载数据的时间过长,影响用户的体验,使用了懒加载之后:

  • 界面的加载速度会有非常明显的提升

  • 节省带宽

  • 不必要加载无用(用户刷不到的数据) 减轻了服务器的压力

vue-lazylaod

https://www.npmjs.com/package/vue-lazyload

在这里插入图片描述

在这里插入图片描述

如果是使用cdn的形式也是一样,引入了这个插件之后要再挂载在Vue实例上,挂载时还可以设置一些常用的参数

在这里插入图片描述

其中的参数:

  • error表示的是当图片加载失败时会使用的图片地址

  • loading表示的是图片处在加载状态时会显示的图片

  • attempt表示图片会加载的次数(当加载失败以后会继续加载的次数)

当配置好了这个之后,就可以在页面中使用了,原来图片的连接时写在src下,现在写在v-lazy里面即可

在这里插入图片描述

以上便是图片的懒加载,只有当页面使用到图片了之后,才会去加载所以的内容(即使后端一次性将全部的资源一次返回(七八百条也一样)之后再图片懒加载的时候才会去加载,并不会一次性的将七八百条都渲染)

后端分页

后端分页是非常常见的一个功能了,我们在请求的时候通常需要传递两个分页非常需要的参数,就是页码也每页的条数,后端就会根据这两个值来给我们返回指定的数据

  • 从概念上来看我们应该就能够理解,后端分页主要是后端在操作懒加载,前端只需要判断当前时候已经到了需要分页的时候了即可。

  • 后端分页最重要的是从数据库中读取数据,所以读取数据最重要的就是sql语句了,sql语句就是select * from emoticon limit 1,15;像这句sql语句的意思就是读取这个表中15条数据,从索引为1的地方开始读取,所以分页最关键的就是sql的limit语句的判断了。

  • 我们可以通过传递的页码和条数来判断返回哪些数据,返回的是页码*条数开始读取传递条数的条数信息并返回。

PC端和移动端分页操作的区别

Pc端和移动端的分页操作还是不一样的,pc端通常是会使用按钮,有一个分页的按钮点一些分页点一下分页这种操作,而移动端就不一样了,移动端通过判断滚动条滚动的进度来判断是否需要分页了,下面我就重点的来讲一下移动端的操作。

移动端判断分页需要使用三个非常关键的值:分别是

  • 滚动条与页面的高度:document.documentElement.scrollTop

  • 可视区域高度:document.documentElement.clientHeight

  • 页面的总高度:document.body.scrollHeight

在这里插入图片描述

当页面触底的时候。这时候将请求的页码加一并请求一下后端的接口即可

在这里插入图片描述

其实也是比较好理解,多想几遍就应该可以理解了,这里有几个比较难的地方,在Vue中给window设置点击事件:

在这里插入图片描述

还有一个比较难的地方是各种高度如何获取,这里我在其他大神的博客下面找了一个图,忘记是哪个大神的了,总之总结的非常好。记录了获取各种宽高,如下:

在这里插入图片描述

这里复习一下koa.js的一些操作
  • 跨域处理:过去我们可以使用koa-core这个模块来实现跨域,但是这个现在表老,已经会给提示了,所以现在如果是后端处理跨域的话需要使用koa2-cors模块,使用的步骤就是引用,然后以中间键的形式挂载在koaApp上。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值