vue和iview实现Scroll 数据无限滚动功能


Posted in Javascript onOctober 31, 2019

在做项目的时候因为数据比较多,一次性全部渲染的话会花费较多的时间,所以,想到每一次渲染10条数据

也想过每一次获取十条数据然后显示就行了,就目前自己所知最好的方法是修改接口,一次返回10条,可是这样子太麻烦了,所以决定一次性请求所有数据,然后每次渲染十条,需要再上拉加载更多

使用的是iview中的组件Scroll

以下是获取数据和封装数据的方法:

vue和iview实现Scroll 数据无限滚动功能

原理是先定义两个全局的变量,一个存储全部的数据,一个存储渲染的数据

在首次获得数据的时候,往渲染的变量中存入全部数据的前十条:

vue和iview实现Scroll 数据无限滚动功能

然后在数据最底时上拉加载新的十条数据:

vue和iview实现Scroll 数据无限滚动功能

其中几个问题都解决了:

1. 当数据小于十条时,如何显示

2. 当数据渲染完成,不再渲染数据

3. Scroll的高度,因为是固定值,会在挂载后获取整个屏幕的高度,根据自己的需求,对中间的scroll的高度进行计算和设置

以上基本实现了整个功能,或许还有些问题没有发现,如果发现了新问题会添加进来

以上这篇vue和iview实现Scroll 数据无限滚动功能就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js no-repeat写法 背景不重复
Mar 18 Javascript
Jquery带搜索框的下拉菜单
May 06 Javascript
javascript操作table(insertRow,deleteRow,insertCell,deleteCell方法详解)
Dec 16 Javascript
jquery表单验证需要做些什么
Nov 17 Javascript
jquery实现静态搜索功能(可输入搜索文字)
Mar 28 jQuery
JavaScript高阶函数_动力节点Java学院整理
Jun 28 Javascript
浅谈关于angularJs中使用$.ajax的注意点
Aug 12 Javascript
基于node.js express mvc轻量级框架实践
Sep 14 Javascript
用vue封装插件并发布到npm的方法步骤
Oct 18 Javascript
javascript计算对象长度的方法
Oct 25 Javascript
Angular 组件之间的交互的示例代码
Mar 24 Javascript
基于vue cli 通过命令行传参实现多环境配置
Jul 12 Javascript
vue 使用鼠标滚动加载数据的例子
Oct 31 #Javascript
axios 实现post请求时把对象obj数据转为formdata
Oct 31 #Javascript
Javascript和jquery在selenium的使用过程
Oct 31 #jQuery
使用axios发送post请求,将JSON数据改为form类型的示例
Oct 31 #Javascript
vue封装可复用组件confirm,并绑定在vue原型上的示例
Oct 31 #Javascript
关于vue表单提交防双/多击的例子
Oct 31 #Javascript
Vuex的实战使用详解
Oct 31 #Javascript
You might like
PHP+AJAX实现无刷新注册(带用户名实时检测)
2006/12/02 PHP
图解找出PHP配置文件php.ini的路径的方法
2014/08/20 PHP
ecshop 2.72如何修改后台访问地址
2015/03/03 PHP
老生常谈ThinkPHP中的行为扩展和插件(推荐)
2017/05/05 PHP
phpmyadmin下载、安装、配置教程
2017/05/16 PHP
thinkphp3.2实现在线留言提交验证码功能
2017/07/19 PHP
js实现addClass,removeClass,hasClass的函数代码
2011/07/13 Javascript
jquery简单实现鼠标经过导航条改变背景图
2013/12/17 Javascript
可恶的ie8提示缺少id未定义
2014/03/20 Javascript
一个支付页面DEMO附截图
2014/07/22 Javascript
node.js中的http.createServer方法使用说明
2014/12/14 Javascript
jQuery插件scroll实现无缝滚动效果
2015/04/27 Javascript
在JavaScript中处理时间之setMinutes()方法的使用
2015/06/11 Javascript
Bootstrap每天必学之js插件
2015/11/30 Javascript
React创建组件的三种方式及其区别
2017/01/12 Javascript
highcharts 在angular中的使用示例代码
2017/09/20 Javascript
React Native自定义控件底部抽屉菜单的示例
2018/02/08 Javascript
JS实现打砖块游戏
2020/02/14 Javascript
js this 绑定机制深入详解
2020/04/30 Javascript
微信小程序实现点击导航条切换页面
2020/11/19 Javascript
[01:08:24]DOTA2-DPC中国联赛 正赛 RNG vs Phoenix BO3 第一场 2月5日
2021/03/11 DOTA
[04:45]DOTA2-DPC中国联赛正赛 iG vs LBZS 赛后选手采访
2021/03/11 DOTA
python使用BeautifulSoup分页网页中超链接的方法
2015/04/04 Python
Linux RedHat下安装Python2.7开发环境
2017/05/20 Python
详解python中executemany和序列的使用方法
2017/08/12 Python
Python拼接微信好友头像大图的实现方法
2018/08/01 Python
Python列表list排列组合操作示例
2018/12/18 Python
python-OpenCV 实现将数组转换成灰度图和彩图
2020/01/09 Python
Tensorflow 定义变量,函数,数值计算等名字的更新方式
2020/02/10 Python
运行Python编写的程序方法实例
2020/10/21 Python
Python更改pip镜像源的方法示例
2020/12/01 Python
海蓝之谜(LA MER)澳大利亚官方商城:全球高端奢华护肤品牌
2017/10/27 全球购物
Spartoo比利时:欧洲时尚购物网站
2017/12/06 全球购物
资产评估专业大学生求职信
2013/09/29 职场文书
代理班主任的自我评价
2014/02/04 职场文书
客户付款通知书
2015/04/23 职场文书