第59讲订单数据下拉实现

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
    /*** 订单查询 type值 0 全部订单  1待付款  2 待收货  3 退款/退货* @param type* @return*/@RequestMapping("/list")public R list(Integer type,Integer page,Integer pageSize){System.out.println("type="+type);List<Order> orderList=null;Map<String,Object> resultMap=new HashMap<String,Object>();Page<Order> pageOrder=new Page<>(page,pageSize);if(type==0){  // 全部订单查询// orderList=orderService.list(new QueryWrapper<Order>().orderByDesc("id"));Page<Order> orderResult = orderService.page(pageOrder, new QueryWrapper<Order>().orderByDesc("id"));System.out.println("总记录数:"+orderResult.getTotal());System.out.println("总页数:"+orderResult.getPages());System.out.println("当前页数据:"+orderResult.getRecords());orderList=orderResult.getRecords();resultMap.put("total",orderResult.getTotal());resultMap.put("totalPage",orderResult.getPages());}else{// orderList = orderService.list(new QueryWrapper<Order>().eq("status", type).orderByDesc("id"));Page<Order> orderResult = orderService.page(pageOrder, new QueryWrapper<Order>().eq("status", type).orderByDesc("id"));System.out.println("总记录数:"+orderResult.getTotal());System.out.println("总页数:"+orderResult.getPages());System.out.println("当前页数据:"+orderResult.getRecords());orderList=orderResult.getRecords();resultMap.put("total",orderResult.getTotal());resultMap.put("totalPage",orderResult.getPages());}resultMap.put("orderList",orderList);return R.ok(resultMap);}

前端定义分页参数:

 // 接口参数QueryParams:{type:0,page:1,// 第几页pageSize:10 // 每页记录数},// 总页数totalPage:1,

触底获取下一页数据:

  /*** 页面上拉触底事件的处理函数*/onReachBottom: function () {console.log("触底")if(this.QueryParams.page>=this.totalPage){// 没有下一页数据console.log("没有下一页数据");wx.showToast({title: '没有下一页数据了'})}else{console.log("有下一页数据");this.QueryParams.page++;this.getOrders();}},

拼接下一页数据:

  /*** 获取订单*/async getOrders(){const res=await requestUtil({url:'/my/order/list',data:this.QueryParams});console.log(res)this.totalPage=res.totalPage;this.setData({orders:[...this.data.orders,...res.orderList]})},

重置请求参数:

  // 根据标题索引来激活选中的数据changeTitleByIndex(index){// 切换标题let {tabs}=this.data;tabs.forEach((v,i)=>i==index?v.isActive=true:v.isActive=false);this.setData({tabs})},/*** tab点击事件处理* @param {*} e */handleItemTap(e){const {index}=e.currentTarget.dataset;this.changeTitleByIndex(index);// console.log("index="+index)// 获取订单列表this.QueryParams.type=index;this.QueryParams.page=1;this.setData({orders:[]})this.getOrders();},

下拉刷新实现:

开启下拉刷新:

{"usingComponents": {},"navigationBarTitleText": "订单查询","enablePullDownRefresh":true,"backgroundTextStyle":"dark"
}

下拉刷新事件

    /*** 页面相关事件处理函数--监听用户下拉动作*/onPullDownRefresh: function () {console.log("下拉刷新")this.QueryParams.page=1;this.setData({orders:[]})this.getOrders();// 手动关闭等待效果wx.stopPullDownRefresh({})}

进入页面加载信息:

  /*** 生命周期函数--监听页面显示*/onShow: function () {console.log("onShow")let pages=getCurrentPages();console.log(pages)let currentPage=pages[pages.length-1];const {type}=currentPage.options;this.changeTitleByIndex(type);this.QueryParams.type=type;this.QueryParams.page=1;this.getOrders();},

报错

2024-02-08 14:33:15.723  WARN 26256 --- [nio-8080-exec-2] .m.m.a.ExceptionHandlerExceptionResolver : Resolved [org.springframework.web.method.annotation.MethodArgumentTypeMismatchException: Failed to convert value of type 'java.lang.String' to required type 'java.lang.Integer'; nested exception is java.lang.NumberFormatException: For input string: "undefined"]

链接

http://localhost:8080/my/order/list?type=undefined&page=1&pageSize=10

http://localhost:8080/my/order/list?type=0&page=1&pageSize=10
在这里插入图片描述

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

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

相关文章

使用 Docker 镜像预热提升容器启动效率详解

概要 在容器化部署中,Docker 镜像的加载速度直接影响到服务的启动时间和扩展效率。本文将深入探讨 Docker 镜像预热的概念、必要性以及实现方法。通过详细的操作示例和实践建议,读者将了解如何有效地实现镜像预热,以加快容器启动速度,提高服务的响应能力。 Docker 镜像预热…

传输层协议 ——— TCP协议

TCP协议 TCP协议谈谈可靠性为什么网络中会存在不可靠&#xff1f;TCP协议格式TCP如何将报头与有效载荷进行分离&#xff1f;序号与确认序号 确认应答机制&#xff08;ACK&#xff09;超时重传机制连接管理机制三次握手四次挥手 流量控制滑动窗口拥塞控制延迟应答捎带应答面向字…

关于使用sort函数来快排的几种使用方法(总结)

sort 函数是一个极好的排序函数&#xff0c;因为其运行速度块&#xff0c;占用内存少&#xff0c;排序也省力&#xff0c;深受程序员们的喜爱&#xff0c;具体用法这里就不再多介绍了&#xff0c;今天主要强调以下几点快排&#xff1a; 1.从大到小快排&#xff1a; #include &…

数字图像处理实验记录九(数字形态学实验)

一、基础知识 1.形态学&#xff0c;用于从图像中提取对表达和描绘区域形状有意义的图像分量&#xff0c;使后续的识别工作能够抓住目标对象最为有本质的形状特征&#xff0c;如边界连通区域等。 2.膨胀运算&#xff1a;膨胀会使目标区域范围“变大”&#xff0c;将于目标区域接…

如何给闲置电脑安装黑群晖

准备 diskgenius &#xff0c;黑群晖引导文件&#xff08;有些需要扩展驱动包&#xff09;&#xff0c;如果给U盘安装需要balenaEtcher或者rufus&#xff08;U盘安装还需要ChipGenus&#xff09;&#xff0c;如果给硬盘安装需要有pe推荐firePE或U启通 我以U盘为例 首先去找这…

20240203在WIN10下使用GTX1080配置stable-diffusion-webui.git不支持float16精度出错的处理

20240203在WIN10下使用GTX1080配置stable-diffusion-webui.git不支持float16精度出错的处理 2024/2/3 21:23 缘起&#xff1a;最近学习stable-diffusion-webui.git&#xff0c;在Ubuntu20.04.6下配置SD成功。 不搞精简版本&#xff1a;Miniconda了。直接上Anacoda&#xff01; …

Go 语言中如何大小端字节序?int 转 byte 是如何进行的?

嗨&#xff0c;大家好&#xff01;我是波罗学。 本文是系列文章 Go 技巧第十五篇&#xff0c;系列文章查看&#xff1a;Go 语言技巧。 我们先看这样一个问题&#xff1a;“Go 语言中&#xff0c;将 byte 转换为 int 时是否涉及字节序&#xff08;endianness&#xff09;&#x…

前端JavaScript篇之对执行上下文的理解

目录 对执行上下文的理解创建执行上下文 对执行上下文的理解 当我们在执行JavaScript代码时&#xff0c;JavaScript引擎会创建并维护一个执行上下文栈来管理执行上下文。执行上下文有三种类型&#xff1a;全局执行上下文、函数执行上下文和eval函数执行上下文。 在写代码的时…

飞书上传图片

飞书上传图片 1. 概述1.1 访问凭证2. 上传图片获取image_key1. 概述 飞书开发文档上传图片: https://open.feishu.cn/document/server-docs/im-v1/image/create 上传图片接口,支持上传 JPEG、PNG、WEBP、GIF、TIFF、BMP、ICO格式图片。 在请求头上需要获取token(访问凭证) …

停车场|基于Springboot的停车场管理系统设计与实现(源码+数据库+文档)

停车场管理系统目录 目录 基于Springboot的停车场管理系统设计与实现 一、前言 二、系统功能设计 三、系统实现 1、管理员功能实现 &#xff08;1&#xff09;车位管理 &#xff08;2&#xff09;车位预订管理 &#xff08;3&#xff09;公告管理 &#xff08;4&#…

卷积层Conv1d包含的元素分别是什么,经过卷积层,数据的形状发生变化吗?

nn.Conv1d 是一个一维卷积层&#xff0c;它通常用于处理序列数据&#xff0c;如时间序列或文本数据。这个层包含以下主要元素&#xff1a; 输入通道数&#xff08;In_channels&#xff09;&#xff1a;这是输入数据的通道数。对于单通道数据&#xff08;如灰度图像或单变量时间…

第一个 Angular 项目 - 静态页面

第一个 Angular 项目 - 静态页面 之前的笔记&#xff1a; [Angular 基础] - Angular 渲染过程 & 组件的创建 [Angular 基础] - 数据绑定(databinding) [Angular 基础] - 指令(directives) 这是在学完了上面这三个内容后能够完成的项目&#xff0c;目前因为还没有学到数…