如何用Vue + Mint UI实现上拉加载更多?

news/2024/5/5 19:56:30/文章来源:https://blog.csdn.net/sdasadasds/article/details/126993810

引言:
上拉加载更多在移动端不论是在 app 里面还是在页面中都是必不可少的,以下是 mint-ui 中上拉加载更多的总结。
一、在项目中使用 mint-ui 需要先安装
查看官网
(1)安装:npm i mint-ui --save
(2)在 vue 中 main.js 引入

import MintUi from 'mint-ui
import 'mint-ui/lib/style.css

全局使用: Vue.use(MintUi)
二、上拉加载更多展示
在这里插入图片描述
三、逻辑解析
1.上拉加载实际上是分页的一种体现,刚开始处于加载状态
2.如果数据加载成功需要判断数据是不是最后一页(可能只有一页数据)
(1)上拉加载是根据 page 的不断自增长,在调接口的时候获取新的数据的,如果加载出来的数据小于每页显示的数据,那么说明加载结束。需要通过 vue 数据双向绑定隐藏加载中字样
(2)如果加载完数据,还需要显示没有更多数据的提示
(3)使用 mint-ui 之

  <ulv-infinite-scroll="getmovielist"infinite-scroll-disabled="loading"infinite-scroll-distance="40"></ul>

其中:
getmovielist 是一个方法,用于调用接口处理数据,默认会自动调用一次初始化展示;
loading 是个开关,用于在加载数据过程中防止用户不断触发上来触底再次加载;
40 表示距离底部小于 40 像素的位置再次触发数据加载。
3.如果在加载的过程中,用户继续上拉至底部触碰加载新的一页数据(上拉加载实际上是分页的一种体现)
4.脚手架 html 代码如下

<template><div class="movie_body"><ulv-infinite-scroll="getmovielist"infinite-scroll-disabled="loading"infinite-scroll-distance="40"><li v-for="item in movielist" :key="item._id"><div class="pic_show"><img :src="item.imgurl"></div><div class="info_list"><h2>{{item.title}}</h2><p>观众评 <span class="grade">{{item.ratings}}</span></p><p>主演: {{item.stars}}</p><p>{{item.description}}</p></div><div class="btn_mall">购票</div></li></ul><div class="commondiv loading" v-show="showloading">loading....</div><div class="commondiv" v-show="showmore">没有更多数据了...</div></div>
</template>
### 5 js代码如下
export default {data() {return {movielist: [],base_url:'http://localhost:8888/',   //定义一个根目录,因为要访问图片需要根目录loading: false,page: 1,  //page默认是1pagesize: 5, //每次分页的条数showloading: false,  //控制加载loadingshowmore: false,  // 控制有没有更多数据};},computed: {},watch: {},methods: {getmovielist(){ // 默认执行一次this.loading = true    // 开关,数据没有出来之前不能连续请求同一参数的接口this.showloading = truevar start = (this.page-1) * this.pagesize  // strat表示跳过几条var end = this.pagesize                //查几条数据this.$http.get(`/movies?start=${start}&end=${end}`).then(res => {// console.log(res)this.showloading = false// 把所有的图片var list =  res.list  //赋值一个变量list.forEach((item)=>{item.imgurl = this.base_url+item.imgurl//同意处理图片前缀})// 如果赋值操作的话,那么每次上拉后请求过来的新数据会把前面的全部覆盖掉this.movielist = this.movielist.concat(list)//每次的数据都要添加进来而不是把之前的数据覆盖掉if(list.length < this.pagesize){//说明数据已经加载完毕this.loading = true//loading为false的话可以调用,为true的时候上拉的时候就停止请求了this.showmore = true} else {   // 说明还有数据this.page = this.page+1   //这个时候page需要加1console.log(this.page)this.loading = false// 如果数据还有这个时候把loading放开}})}}
}

ps: axios 封装需要引入 axios
并在 main.js 中 Vue.prototype.$http = axios 挂载一下,本片作者使用了环境变量进行跨域代理配置,你也可以根据自己的调用接口进行相应处理.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_12178.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

图扑数字孪生军事营区,实现主动防御

前言 20 世纪 50 年代初中国人民解放军开始自建营区。传统营区管理系统以独立的“点状”系统为主&#xff0c;缺乏集控平台&#xff0c;全局管理复杂度高。70 年代末提出建设智能化营区&#xff0c;并向“数字化、智能化、网络化、互动化、融合化”的方向靠拢。通过建设集光电…

【车辆配送】基于模拟退火 (SA)求解车辆配送 (VPR) (Matlab代码实现)

目录 1 车辆配送问题 2 模拟退火法 3 Matlab代码实现 4 实现结果 5 参考文献 6 写在最后 1 车辆配送问题 式(9)~( 12)中, 为配送车辆到达需求点i的时间;为需求点i到需求点j的运输成本;、分别为配送车辆提前到达需求点i的或者滞后到达需求点i的单位时间内的等待成本以及惩…

C语言编译过程——预处理、编译汇编和链接详解

引言 C语言经典的 “hello world ” 程序&#xff0c;伴随着每个程序员一起步入编程世界的大门。从编写、编译到运行&#xff0c;看到屏幕上输出的“hello world ”&#xff0c;那么你知道它都经历了什么吗&#xff1f;今天我们就来聊聊这个话题。 一、从hello.c聊起 hello …

Java多线程~线程的状态以及状态转移的条件

目录 线程的六种状态 状态转移的条件 NEW RUNNABLE BLOCKED WAITING TIMED_WAITING TERMINATED 线程的六种状态 线程共有六种状态&#xff0c;分别为&#xff1a; NEW(初始状态)&#xff1a;new表示新建一个线程对象&#xff0c;即安排了工作&#xff0c;但未开始行…

Ubuntu指令说明

1、ls ls命令是list的缩写&#xff0c;用来打印出当前目录的清单。如果ls指定其他目录&#xff0c;那么就会显示指定目录里的文件及文件夹清单。通过ls命令不仅可以查看linux文件夹包含的文件&#xff0c;而且可以查看文件权限&#xff08;包括目录、文件夹、文件权限&#xf…

【逻辑】【java基础】代码逻辑思路 层级关系 【层级注解】【架构逻辑】

命名规范: 层级逻辑关系图: 层级逻辑思路图:(代码架构逻辑)

(附源码)springboot高校宿舍交电费系统 毕业设计 031552

Springboot高校宿舍交电费系统 摘 要 科技进步的飞速发展引起人们日常生活的巨大变化&#xff0c;电子信息技术的飞速发展使得电子信息技术的各个领域的应用水平得到普及和应用。信息时代的到来已成为不可阻挡的时尚潮流&#xff0c;人类发展的历史正进入一个新时代。在现实运…

低通滤波,高通滤波,中值滤波

低通滤波和高通滤波 【参考:图像处理之高通滤波及低通滤波】 低通滤波和高通滤波需用到傅里叶变换知识,可参考这里。 图像在频域里面,频率低的地方说明它是比较平滑的,因为平滑的地方灰度值变化比较小,而频率高的地方通常是边缘或者噪声,因为这些地方往往是灰度值突变的。…

用户终身价值利用xgboost进行LTV预测

在对用户进行细分的时候需要衡量用户的一个重要指标就是用户生命周期价值。不管是什么投入最终的目的是为了盈利,当然如何识别正确的用户周期价值就至关重要了。 其中用户的终身价值计算就非常容易。可以通过一个时间窗口期,即具体的时间可以是年,可以是月,也可以是日计算…

数字藏品app开发

目前大平台的数字藏品主要功能分为三个大体的方向&#xff1a; 1.建立独立的电商平台&#xff0c;平台方组织发行并销售或者赠送&#xff0c;这种玩的方式是国内的主流运行方向&#xff1b; 2.用户将持有的数字藏品引入到了社交平台&#xff0c;国外平台允许用户验证所…

React教程之每个开发人员都应该使用的可扩展和可维护的 React 项目结构

一个好的项目结构可以对项目在理解代码库、灵活性和维护方面的成功程度产生巨大影响。没有良好结构和维护的项目很快就会变成一团糟和可怕的遗产,没有人愿意与之合作。 现在,我将向您展示我在项目中经常使用的结构,并解释其背后的原因。这种结构应该是大型应用程序的一个很…

endpoint is blank

报错图 问题:简单来说使用nacos作为注册中心的时候 并没有对注册中心进行配置而出现的报错 nacos注册中心采用bootstrap.yml或者bootstrap.properties文件进行配置,所以有的人在application.yml或application.properties进行配置了 还是会报同样的错误 nacos正确的配置应该使…

使用RestfulTool插件模拟前端向后端发送请求体,通过SpringMVC结合MyBaits响应返回体

✨✨博主简介:一个会bbox的&#x1f468;‍&#x1f4bb; ✨✨个人主页:沫洺的主页 &#x1f4da;&#x1f4da;系列专栏: &#x1f4d6; JavaWeb专栏&#x1f4d6; JavaSE专栏 &#x1f4d6; Java基础专栏&#x1f4d6;vue3专栏 &#x1f496;&#x1f496;如果文章对你有所帮…

Nacos2.0.3 单例模式mysql配置启动,完整版

一、copy配置文件application.properties 从运行的容器中把application.properties文件copy到虚拟机指定目录&#xff1a;/opt/nacos/conf/ docker cp nacos:/home/nacos/conf/application.properties /opt/nacos/conf/application.properties二、修改配置文件 application.…

外汇天眼:美联储如预期再次加息75个基点 并誓言进一步加息以对抗通胀

当地时间周三下午&#xff0c;美联储(Federal Reserve)将基准利率再上调75个基点&#xff0c;并暗示将继续在远高于当前水平的水平上加息。为了降低接近上世纪80年代初以来最高水平的通货膨胀率&#xff0c;美联储将联邦基金利率上调至3%-3.25%的区间&#xff0c;为2008年初以来…

计算机专业毕业设计怎么选?计算机本科毕业设计选题 2023年选题推荐

计算机专业毕业设计怎么选?计算机本科毕业设计选题 2023年选题推荐前言 现在已经迎来2023年的毕业季,很多同学咨询“IT跃迁谷毕设展”关于计算机毕业设计选题方面的问题。例如计算机毕设选题什么好?计算机毕设选题选什么新颖一些?计算机毕设选题如何好过关一些?等等一些问…

Fabric.js 喷雾笔刷 从入门到放肆

theme: smartblue 我报名参加金石计划1期挑战——瓜分10万奖池&#xff0c;这是我的第18篇文章&#xff0c;点击查看活动详情 本文简介 点赞 关注 收藏 学会了 喷雾笔刷 SprayBrush 是 fabric.js 提供的一个很好玩的工具&#xff0c;而且 fabric.js 也封装好了很多非常方便的…

ASP.NET 错误机制

部分包括设置为 On 的 mode 属性。mode 属性用于控制错误重定向发生的方式。例如&#xff0c;如果您正开发应用程序&#xff0c;则很可能希望查看实际的 ASP.NET 错误信息&#xff0c;并且不希望被重定向到更用户友好的错误页。mode 属性包括以下设置&#xff1a; On&#xff1…

【C语言】规范掌握C语言函数|数组名的妙用|指针快速入门|综合使用小案例

✅作者简介&#xff1a;热爱后端语言的大学生&#xff0c;CSDN内容合伙人 ✨精品专栏&#xff1a;C面向对象 文章目录1、函数的结构1.1、无参无返1.2、无参有返1.3、有参无返1.4、有参有返1.5、主函数中的调用及运行效果2、C语言数组创建和基本操作2.1、数组创建的方式2.2、数组…

CVE-2017-0143(永恒之蓝)漏洞复现By metasploit

一、永恒之蓝介绍 永恒之蓝是在Windows的SMB服务处理SMB v1请求时发生的漏洞,这个漏洞导致攻击者在目标系统上可以执行任意代码。通过永恒之蓝漏洞会扫描开放445文件共享端口的Windows机器,无需用户任何操作,只要开机上网,不法分子就能在电脑和服务器中植入勒索软件、远程控…