一、前言

欢迎回到mypet项目实战!📋 今天我们实现商家服务管理核心功能——商家服务列表展示与上拉加载更多。商家成功注册并通过审核后,可发布宠物服务项目(如洗澡、美容、医疗等),用户通过服务列表浏览并预约。

本次实现的核心是**“分页加载”**技术:后端使用MyBatis-Plus的Page对象实现分页查询,前端集成Mescroll-Uni组件实现上拉加载更多(类似电商APP的商品列表)。即使是零基础,也能通过“复制代码+注释解析”掌握分页逻辑与滚动加载的实现。

📌 学习目标

  1. 掌握MP的Page分页查询,实现按商家ID、服务状态等条件的分页数据返回;
  2. 熟练使用Mescroll-Uni组件,实现上拉加载更多、下拉刷新功能;
  3. 理解“分页参数传递”“数据追加”“加载状态管理”等关键逻辑;
  4. 解决“数据重复加载”“无更多数据判断”“下拉刷新重置”等实战问题。

二、前置准备

开始编码前,请确认以下内容已就绪:

项目 检查内容 注意事项
数据库表结构 fuwuxiangmu(服务项目表)需包含以下字段:
id(主键)、shangjia_id(关联商家ID)、fuwumingcheng(服务名称)、fuwujiage(服务价格)、fuwudescribe(服务描述)、zhuangtai(状态:0-下架,1-上架)、addtime(添加时间)
若表/字段缺失,执行建表SQL:
sqlCREATE TABLE fuwuxiangmu (id BIGINT PRIMARY KEY AUTO_INCREMENT, shangjia_id BIGINT NOT NULL, fuwumingcheng VARCHAR(100) NOT NULL, fuwujiage DECIMAL(10,2) NOT NULL, zhuangtai TINYINT DEFAULT 1 COMMENT '0-下架,1-上架');
后端配置 1. 已配置MP分页插件(MybatisPlusConfig中注册PaginationInterceptor);2. 商家已通过审核(shangjiazhuangtai=1 若未配置分页插件,需在MybatisPlusConfig中添加:
@Bean public PaginationInterceptor paginationInterceptor() { return new PaginationInterceptor(); }
前端组件 1. 已导入Mescroll-Uni组件(HBuilder X→插件市场搜索安装);2. pages.json配置路由:
"pages": [{"path": "pages/fuwuxiangmu/list","style": {"navigationBarTitleText": "我的服务列表"}}]
确保Mescroll-Uni组件路径正确(默认/components/mescroll-uni/mescroll-uni.vue
测试数据 fuwuxiangmu表插入测试数据(关联已通过审核的商家ID):
INSERT INTO fuwuxiangmu (shangjia_id, fuwumingcheng, fuwujiage, zhuangtai) VALUES (1, '宠物洗澡', 39.90, 1), (1, '毛发修剪', 69.90, 1);
确保shangjia_id对应的数据在shangjia表中存在且zhuangtai=1

三、服务列表分页加载流程图

先通过流程图理清“初始加载→上拉加载→下拉刷新”的完整逻辑:

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

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

相关文章

DNS服务管理

一、概述 概念 Domain Name Service,一套分布式的域名服务系统,即有多个DNS服务器遍布于世界。每个DNS服务器上存放着大量的机器域名和IP地址的映射,并且是动态更新。众多网络客户端程序都使用DNS协议来向DNS服务器查询目标主机的IP地址。 …

自定义类型:结构体、联合与枚举(2)

目录 前言 一、 联合体类型的声明 介绍: 注意: 二、 联合体的特点 介绍: 代码举例: 三、联合体⼤⼩的计算 介绍: 联合体大小的计算规则 1. 基础规则 1. 确定最大成员大小 2. 计算对齐模数的最小公倍数 3…

Oceanbase下使用TPC-H模式生成数据

1.下载tpc-h http://www.tpc.org/ 点击下载始终弹出这个画面,尝试了多种方法无效,最后选择科学上网工具,才正常下载。 通过网盘分享的文件:TPC-H-Toolv3.zip 链接: https://pan.baidu.com/s/14CXrp7v_7XkPtXfFLkziBQ?pwdqf5t 提…

LeetCode 面试经典 150_哈希表_单词规律(41_290_C++_简单)

LeetCode 面试经典 150_哈希表_单词规律(41_290_C_简单)题目描述:输入输出样例:题解:解题思路:思路一(哈希表):代码实现代码实现(思路一(哈希表&a…

librespeed c++ 上传下载带宽测试 排坑全流程

在搭建 LibreSpeed 测速服务并实现基于 curl/API 的上传下载测试时,遇到 Nginx 配置冲突、PHP 权限异常等问题。本文将梳理从环境搭建到功能验证的全流程,针对 “curl 上传报 404/405”“PHP-FPM 权限拒绝”等典型问题,提供可复现的解决方案。…

重读生成概率模型1----基础概念

1 KL 散度 KL 散度的作为是描述两个分布的差异的,首先是度量一个分布,用熵来度量。 1.1 熵 在介绍熵之间,首先要度量单个事件的信息量 I(x)−logP(x)I(x)-logP(x)I(x)−logP(x) 整体的信息量 H(P)Ex P[−logP(x)]−∑P(x)logP(x) \begin{alig…

排查解决磁盘占用高问题(容器挂载的磁盘)

最近遇到磁盘占用高的告警,记录一下解决的思路。 首先是系统触发告警,通知我们某台机器磁盘占用高。(或其他途径得知) 通过XShell登录该机器。 执行df-h命令查看挂载占用情况找到真正占用高的挂载点挂载点/home目录占用高&#xf…

流体(1)

流体 Minecraft 中的流体(Fluid),也常被称为液体(Liquid),是一类能够自由流动、形成河流、瀑布或湖泊的特殊方块。它们的行为基于简化的流体力学,是游戏世界中动态环境的重要组成部分。 💧 流体是什么? 在 Minecraft 中,流体核心特点包括: 源方块与流动:每个流…

机器学习-卷积神经网络(CNN)

全连接层->卷积层 用有一个隐藏层的MLP训练ImageNet数据集(300*300的图像,有1000个类别),要有10000个输出 会有10亿个可学习的参数,量太大 全连接:一个输出是根据所有输入加权得到在图片中识别物体&…

Ubuntu 磁盘扩容与扩容失败问题解决( df -h 与 GParted 显示空间不一致的问题 -LVM)

在管理 Linux 磁盘时,你是否遇到过这样的困惑:正常扩容之后,发现GParted 显示某个分区还有几十 GiB 可用,但 df -h 却提示该分区已接近满额?这种 “空间幻觉” 背后是系统存储管理的分层设计,本文将从原理到…

PyQt5中QLineEdit控件数值显示与小数位数控制

在PyQt5应用程序开发中,QLineEdit控件常用于显示和编辑文本内容。当需要用它来显示数值并控制小数位数时,开发者需要掌握一些特定的技巧。本文将深入探讨几种实现方法,每种方法都附带完整独立的代码示例。 数值格式化基础 在Python中&#xf…

LangChain使用方法以OpenAI 的聊天模型GPT-4o为例

以使用 OpenAI 的聊天模型(如 GPT-4)为例,从设置环境、初始化模型、调用模型到处理响应的各个方面进行介绍: 1. 环境设置 安装 langchain-openai 包。设置环境变量 OPENAI_API_KEY,用于认证(以linux为例&am…

Oracle为数据大表创建索引方案

在日常业务中,避免不了为数据量大表补充创建索引的情况,如果快速、有效地创建索引成了一个至关重要的问题(注意:虽然提供有ONLINE在线执行的方式,理想状态下不会阻塞DML操作,但ONLINE在开始、结束的两个时刻…

网站服务相关问题

目录 HTTP常见的状态码 http和https的区别以及使用的端口号 http处理请求的过程 https认证过程 正向代理和反向代理的区别 HTTP常见的状态码 HTTP(超文本传输协议)定义了一系列的状态码,用于表示客户端请求的处理结果。以下是一些常见的…

Go并发编程实战:深入理解Goroutine与Channel

Go并发编程实战:深入理解Goroutine与ChannelGo并发编程实战:深入理解Goroutine与Channel概述1. 为什么是Go的并发?从“线程”与“协程”说起2. Goroutine:如何使用?3. Channel:Goroutine间的安全通信创建与…

2025服贸会“海淀之夜”,点亮“科技”与“服务”底色

2025年9月12日傍晚,北京颐和园,十七孔桥旁,2025年中国国际服务贸易交易会“海淀之夜”如约而至。在“海淀之夜”,科技机构、金融机构、咨询服务机构、出海服务企业以及跨国企业和国际友人等,将目光聚焦于此。被第三方机…

qt使用camke时,采用vcpkg工具链设置VTK的qt模块QVTKOpenGLNativeWidget

下载:QVTKOpenGLNativeWidget嵌入qt应用中资源-CSDN下载 1.通过vcpkg安装VTK,目前的VTK里面默认为qt6,如果需要安装qt5,需要将端口配置进行修改 笔者的vcpkg的vtk端口路径:D:\vcpkg\ports\vtk portfile.cmake 修改点: #第一处 #file(READ "${CURRENT_INSTALLED_DIR}/sh…

Axios在鸿蒙应用开发中的使用

目录一、简介二、安装与配置三、axios用法1.axios泛型参数(1).第三个泛型参数-约束data请求参数的类型(2).第二个泛型参数-决定后台返回数据的类型2.axios拦截器3.请求工具封装统一处理业务状态码错误统一处理401或404错误一、简介 Axios 是一个基于 Promise 的网络请求库&…

第九周文件上传

文件上传漏洞 不同的网站要不同的webshell。我们使用是php开发的网站。 一服务器白名单绕过 服务端白名单(Whitelist)是⼀种安全机制,它只允许预定义的合法元素通过(只有有限的元素进入),其他所有内容默认被拒绝。相比黑名单&am…

计算机视觉必读论文:从经典到前沿

计算机视觉必读论文:从经典到前沿 一、前言 二、经典论文解读​ 2.1 图像分类​ 2.1.1 《ImageNet Classification with Deep Convolutional Neural Networks》(AlexNet)​ 2.1.2 《Very Deep Convolutional Networks for Large-Scale Image Recognition》(VGGNet)​ 2.1.…