vant van-tabs van-pull-refresh van-list 标签栏+上拉加载+下拉刷新

 

<template><div class="huibj"><div class="listtab"><!--顶部导航--><div class="topdh"><topnav topname="余额明细"></topnav></div><!--Tab 标签--><van-tabs v-model="yeactive"@change="Tabnav"><van-tab v-for="(item,index) in yetabList":key="index":title="item.title":name="item.name"></van-tab></van-tabs></div><div class="ye_mxlist"><van-pull-refreshv-model="ye_isLoading"success-text="刷新成功"@refresh="ye_onRefresh"><van-listv-model="ye_loading":finished="ye_finished"finished-text="-- END --"@load="ye_onLoad"><van-cell v-for="(item,index) in ye_list" :key="index"><div class="ye_dljl_mx" @click="goyuemx(item)" style="height: 40px">{{index}}</div></van-cell></van-list></van-pull-refresh></div></div>
</template>
<script>
//以下是组件  #
import topnav from '@/components/topnav/topnav'; //顶部导航export default {name: 'yemxZ',data() {return {//Tab 标签yetabList: [{title: "aa",name: "0"},{title: "bb",name: '1'},{title: "cc",name: '2'},],yeactive: '0', //tab默认值//上拉加载下拉刷新ye_isLoading: false, //是否下拉刷新ye_loading: false,//是否处于加载状态ye_finished: false, //	是否已加载完成ye_list: [],};},components: {topnav,},mounted() {//this.getData()},methods: {//tab切换Tabnav() {console.log(2)console.log(this.yeactive)},//下拉刷新ye_onRefresh() {let that=thissetTimeout(() => {that.ye_isLoading = false;that.ye_onLoad();}, 1000);},ye_onLoad() {//   滚动条与底部距离小于 offset 时触发  offset可以自定义setTimeout(() => {for (let i = 0; i < 10; i++) {this.ye_list.push(this.ye_list.length + 1);}this.ye_loading = false;if (this.ye_list.length >= 40) {this.ye_finished = true;}}, 1000);},goyuemx(val) {console.log(5)}}
};
</script><style scoped></style>

增加分页:

<template><div class="huibj"><div class="listtab"><!--Tab 标签--><van-tabs v-model="yeactive" color="#f59a23" title-active-color="#f59a23"@change="Tabnav"><van-tab v-for="(item,index) in yetabList":key="index":title="item.title":name="item.namep"></van-tab></van-tabs></div><div class="ye_mxlist"><van-pull-refreshv-model="isRefresh"success-text="刷新成功"@refresh="onRefresh"><van-empty v-if="total == 0" description="暂无数据" /><van-listv-model="loadingMore":finished="isfinished"finished-text="-- END --"@load="onLoadMore"><van-cell v-for="(item,index) in dataList" :key="index"><div class="ye_dljl_mx" @click="goyuemx(item)" style="height: 40px"><div class="ye_dljl"><p class="ye_dljl_mc">{{item.dealReasonStr}}</p><p class="ye_dljl_sj">{{item.dealTime}}</p></div><div :class="item.dealType == 1 ? 'ye_jemx ye_add_je':'ye_jemx'">{{item.dealType == 1 ? '+': '-'}}{{item.dealAmount/100}}</div></div></van-cell></van-list></van-pull-refresh></div></div>
</template>
<script>//新的路径josn
import axios from '@/utils/axios';
import url from '@/ui/URL.js';
//新的路径josn end
export default {name: 'yemxZ',data() {return {//Tab 标签yetabList: [{title: "全部",name: "0"},{title: "收入",name: '1'},{title: "支出",name: '2'},],yeactive: '0', //tab默认值//上拉加载下拉刷新isRefresh: false, //是否下拉刷新loadingMore: false,// 加载更多是否显示加载中isfinished: false, //	加载是否已经没有更多数据dataList: [],//列表total: 1,pageNum: 0,pageSize:10,};},components: {topnav,},mounted() {},methods: {//tab切换Tabnav() {this.dataList=[];this.pageNum=0;this.isfinished=false; //	加载是否已经没有更多数据this.backtop();},//下拉刷新onRefresh() {this.isfinished=true; //	加载是否已经没有更多数据this.dataList=[]; // 清空列表数据this.pageNum=1;this.getList();},//加载更多onLoadMore() {console.log('加载更多')this.pageNum++;this.getList();},// 获取列表getList() {//模拟// setTimeout(() => {//   for (let i = 0; i < 2; i++) {//     this.dataList.push(this.dataList.length + 1);//   }//   this.loadingMore = false;//   if (this.dataList.length >= 6) {//     this.isfinished = true;//   }// }, 1000);let that=this;let bdlx=this.yeactive == 0 ? '': this.yeactive;//变动类型:1收入,2支出let csData={pageNum:that.pageNum,pageSize:that.pageSize,dealType:bdlx};axios.ajax({method: 'get',url: url.zzzzz.xxxx,params:csData}).then((res) => {if (res.success) {// 加载状态结束this.loadingMore = false;this.isRefresh=false;  //是否下拉刷新//数据追加到列表if (this.pageNum > 1) {this.dataList = this.dataList.concat(res.data.list)} else {this.dataList = res.data.list}this.total=res.data.total;if (this.total <= this.dataList.length) {console.log("没有更多")this.isfinished = true}else{this.isfinished = false}} else {this.$toast(res.message);}});},//返回顶部backtop () {document.documentElement.scrollTop=0},//说额明细goyuemx(val) {this.$router.push('yemxxqZ');}}
};
</script><style scoped></style>

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

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

相关文章

Python教程(9)——Python变量类型列表list的用法介绍

列表操作 创建列表访问列表更改列表元素增加列表元素修改列表元素删除列表元素 删除列表 在Python中&#xff0c;列表&#xff08;list&#xff09;是一种有序、可变的数据结构&#xff0c;用于存储多个元素。列表可以包含不同类型的元素&#xff0c;包括整数、浮点数、字符串等…

配置 yum/dnf 置您的系统以使用默认存储库

题目 给系统配置默认存储库&#xff0c;要求如下&#xff1a; YUM 的 两 个 存 储 库 的 地 址 分 别 是 &#xff1a; ftp://host.domain8.rhce.cc/dvd/BaseOS ftp://host.domain8.rhce.cc/dvd/AppStream vim /etc/yum.repos.d/redhat.repo [base] namebase baseurlftp:/…

C语言快速回顾(一)

前言 在Android音视频开发中&#xff0c;网上知识点过于零碎&#xff0c;自学起来难度非常大&#xff0c;不过音视频大牛Jhuster提出了《Android 音视频从入门到提高 - 任务列表》&#xff0c;结合我自己的工作学习经历&#xff0c;我准备写一个音视频系列blog。C/C是音视频必…

Rabbitmq延迟消息

目录 一、延迟消息1.基于死信实现延迟消息1.1 消息的TTL&#xff08;Time To Live&#xff09;1.2 死信交换机 Dead Letter Exchanges1.3 代码实现 2.基于延迟插件实现延迟消息2.1 插件安装2.2 代码实现 3.基于延迟插件封装消息 一、延迟消息 延迟消息有两种实现方案&#xff…

vue3 setup+Taro3 调用原生小程序自定义年月日时分多列选择器,NutUI改造

vue3 setupTaro3 调用原生小程序自定义年月日时分多列选择器&#xff0c;NutUI改造 NutUI 有日期时间选择器&#xff0c;但是滑动效果太差&#xff0c;卡顿明显。换成 原生小程序 很顺畅 上代码&#xff1a; <template><view><pickermode"multiSelector&…

2023牛客暑期多校训练营9-J Puzzle: Star Battle

2023牛客暑期多校训练营9-J Puzzle: Star Battle https://ac.nowcoder.com/acm/contest/57363/J 文章目录 2023牛客暑期多校训练营9-J Puzzle: Star Battle题意解题思路代码 题意 解题思路 出题人都说是诈骗题&#xff08;&#xff0c;可以发现满足每行每列恰好有 n n n个星…

【解决】Kafka Exception thrown when sending a message with key=‘null‘ 异常

问题原因&#xff1a; 如下图&#xff0c;kafka 中配置的是监听域名的方式&#xff0c;但程序里使用的是 ip:port 的连接方式。 解决办法&#xff1a; kafka 中配置的是域名的方式&#xff0c;程序里也相应配置成 域名:port 的方式&#xff08;注意&#xff1a;本地h…

机器学习笔记之优化算法(十三)关于二次上界引理

机器学习笔记之优化算法——关于二次上界引理 引言回顾&#xff1a;利普希兹连续梯度下降法介绍 二次上界引理&#xff1a;介绍与作用二次上界与最优步长之间的关系二次上界引理证明过程 引言 本节将介绍二次上界的具体作用以及它的证明过程。 回顾&#xff1a; 利普希兹连续…

uniapp 微信小程序 订阅消息

第一步&#xff0c;需要先去小程序官方挑选一下订阅模板拿到模板id 订阅按钮在头部导航上&#xff0c;所以 <u-navbar :bgColor"bgColor"><view class"u-nav-slot" slot"left" click"goSubscribe"><image :src"g…

综述:计算机视觉中的图像分割

一、说明 这篇文章是关于图像分割的探索&#xff0c;这是解决计算机视觉问题&#xff08;如对象检测、对象识别、图像编辑、医学图像分析、自动驾驶汽车等&#xff09;的重要步骤之一。让我们从介绍开始。 二、图像分割介绍 图像分割是计算机视觉中的一项基本任务&#xff0c;涉…

【Maven】SpringBoot项目使用maven-assembly-plugin插件多环境打包

SpringBoot项目使用maven-assembly-plugin插件多环境打包 1.创建SpringBoot项目并在pom.xml文件中添加maven-assembly-plugin配置 <!-- 多环境配置 --><profiles><!-- 开发环境 --><profile><id>dev</id><properties><prof…

新一代分布式融合存储,数据场景All In One

1、摘要 2023年5月11日&#xff0c;浪潮信息全国巡展广州站正式启航。会上&#xff0c;重磅发布新一代分布式融合存储AS13000G7&#xff0c;其采用极致融合架构设计理念&#xff0c;实现同一套存储满足四种非结构化数据的“All In One”高效融合&#xff0c;数据存力提升300%&a…

基于WebSocket的在线文字聊天室

与Ajax不同&#xff0c;WebSocket可以使服务端主动向客户发送响应&#xff0c;本案例就是基于WebSocket的一个在线聊天室&#xff0c;不过功能比较简单&#xff0c;只能满足文字交流。演示如下。 案例学习于b站up主&#xff0c;链接 。这位up主讲的非常清楚&#xff0c;值得去学…

item_get_sales-获取TB商品销量详情

一、接口参数说明&#xff1a; item_get_sales-获取商品销量详情&#xff0c;点击更多API调试&#xff0c;请移步注册API账号点击获取测试key和secret 公共参数 请求地址: https://api-gw.onebound.cn/taobao/item_get_sales 名称类型必须描述keyString是调用key&#xff08…

Idea 快捷键整理

Idea快捷键和自动代码补全汇总 idea快捷键汇总 Ctrl 快捷键说明Ctrl F在当前文件进行文本查找 &#xff08;必备&#xff09;Ctrl R在当前文件进行文本替换 &#xff08;必备&#xff09;Ctrl Z撤销 &#xff08;必备&#xff09;Ctrl Y删除光标所在行 或 删除选中的行 &am…

设计HTML5图像和多媒体

在网页中的文本信息直观、明了&#xff0c;而多媒体信息更富内涵和视觉冲击力。恰当使用不同类型的多媒体可以展示个性&#xff0c;突出重点&#xff0c;吸引用户。在HTML5之前&#xff0c;需要借助插件为网页添加多媒体&#xff0c;如Adobe Flash Player、苹果的QuickTime等。…

【C++精华铺】6.C++类和对象(下)类与对象的知识补充及编译器优化

目录 1. 再谈构造 1.1 成员变量的初始化&#xff08;初始化列表&#xff09; 1.2 初始化列表的行为 1.3 explicit关键字 2. 类中的static成员 2.1 静态成员变量 2.2 静态成员函数 3. 友元 3.1 友元函数 3.1 友元类 4. 内部类 5. 匿名对象 6. 对象拷贝时候的编译器优化…

【LeetCode每日一题】——41.缺失的第一个正数

文章目录 一【题目类别】二【题目难度】三【题目编号】四【题目描述】五【题目示例】六【题目提示】七【解题思路】八【时间频度】九【代码实现】十【提交结果】 一【题目类别】 哈希表 二【题目难度】 困难 三【题目编号】 41.缺失的第一个正数 四【题目描述】 给你一个…

Compute shader SV 理解图

本图转子&#xff1a;【Computeshader】个人总结_蒋伟博的博客-CSDN博客

【Rust】Rust学习 第十二章一个 I/O 项目:构建一个命令行程序

本章既是一个目前所学的很多技能的概括&#xff0c;也是一个更多标准库功能的探索。我们将构建一个与文件和命令行输入/输出交互的命令行工具来练习现在一些你已经掌握的 Rust 技能。 Rust 的运行速度、安全性、单二进制文件输出和跨平台支持使其成为创建命令行程序的绝佳选择…