Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

z-paging

SmileZXLee1.4k2.8.7TypeScript support: included

超简单、低耦合!使用wxs+renderjs实现。支持自定义下拉刷新、上拉加载更多、虚拟列表、下拉进入二楼、自动管理空数据图、无闪动聊天分页、本地分页、国际化等数百项配置

下拉刷新, 上拉加载, 分页器, nvue, 虚拟列表

readme

z-paging

logo

version license

z-paging-x现已支持uniapp x,持续完善中,插件地址👉🏻 https://ext.dcloud.net.cn/plugin?name=z-paging-x

文档地址:https://z-paging.zxlee.cn

更新组件前,请注意版本差异


功能&特点

  • 【配置简单】仅需两步(绑定网络请求方法、绑定分页结果数组)轻松完成完整下拉刷新,上拉加载更多功能。
  • 【低耦合,低侵入】分页自动管理。在page中无需处理任何分页相关逻辑,无需在data中定义任何分页相关变量,全由z-paging内部处理。
  • 【超灵活,支持各种类型自定义】支持自定义下拉刷新,自定义上拉加载更多等各种自定义效果;支持使用内置自动分页,同时也支持通过监听下拉刷新和滚动到底部事件自行处理;支持使用自带全屏布局规范,同时也支持将z-paging自由放在任意容器中。
  • 【功能丰富】支持国际化,支持自定义且自动管理空数据图,支持主题模式切换,支持本地分页,支持无闪动聊天分页模式,支持展示最后更新时间,支持吸顶效果,支持内部scroll-view滚动与页面滚动,支持一键滚动到顶部,支持下拉进入二楼等诸多功能。
  • 【【全平台兼容】支持vue&nvue,vue2&vue3,js&ts,支持h5、app、鸿蒙Next及各家小程序。
  • 【高性能】在app-vue、h5、微信小程序、QQ小程序上使用wxs+renderjs在视图层实现下拉刷新;支持虚拟列表,轻松渲染百万级列表数据!

反馈qq群


预览


自定义下拉刷新效果演示 滑动切换选项卡+吸顶演示 聊天记录模式演示
虚拟列表(流畅渲染1万+条)演示 下拉进入二楼演示 在弹窗内使用演示

在线demo体验地址:

扫码体验

demo下载

  • 支持vue2&vue3的选项式api写法demo下载,请点击页面右上角的【使用HBuilderX导入示例项目】或【下载示例项目ZIP】。
  • 支持vue3的组合式api写法demo下载,请访问github

changelog

2.8.7(2025-05-30)

1.新增 props:layout-only,支持仅使用基础布局。
2.新增 goF2方法,支持手动触发进入二楼。
3.新增 @scrollDirectionChange事件,支持监听列表滚动方向改变。
4.新增 props:paging-class,支持直接设置z-pagingclass
5.新增 addKeyboardHeightChangeListener方法,支持手动添加键盘高度变化监听。
6.修复 scrollIntoViewById方法在存在slot=top或局部区域滚动时,滚动的位置不准确的问题。
7.优化 重构底部安全区域处理逻辑,修改为占位view的方式,处理方案更灵活并支持自定义底部安全区域颜色。
8.优化 兼容在nvue+vue3中使用waterfall
9.优化 规范types中对style类型的约束。

2.8.6(2025-03-17)

1.新增 聊天记录模式流式输出(类似chatGPT回答)演示demo。
2.新增 z-paging及其公共子组件支持HBuilderX代码文档提示。
3.新增 props:virtual-in-swiper-slot,用以解决vue3+(微信小程序或QQ小程序)中,使用非内置列表写法时,若z-paging在swiper-item中存在的无法获取slot插入的cell高度进而导致虚拟列表失败的问题。
4.新增 @scrolltolower和@scrolltoupper支持nvue。
5.修复v2.8.1引出的方法scrollIntoViewById在微信小程序+vue3中无效的问题。
6.修复v2.8.1引出的在子组件内使用z-paging虚拟列表无效的问题。
7.修复 在微信小程序中基础库版本较高时wx.getSystemInfoSync is deprecated警告。
8.优化 提升下拉刷新在鸿蒙Next中的性能。
9.优化 @scrolltolower@scrolltoupper在倒置的聊天记录模式下的触发逻辑。
10.优化 其他细节调整。

2.8.5(2025-02-09)

1.新增 方法scrollToX,支持控制x轴滚动到指定位置。
2.修复 快手小程序中报错await isn't allowed in non-async function的问题。
3.修复 在iOS+nvue中,设置了:loading-more-enabled="false"后,调用scrollToBottom无法滚动到底部的问题。
4.修复 在支付宝小程序+页面滚动中,数据为空时空数据图未居中的问题。
5.优化 fetch types修改。

2.8.4(2024-12-02)

1.修复 在虚拟列表+vue2中,顶部占位采用transformY方案;在虚拟列表+vue3中,顶部占位采用view占位方案。以解决在vue2+微信小程序+安卓+兼容模式中,可能出现的虚拟列表闪动的问题。
2.修复 在列表渲染时(尤其是在虚拟列表中)偶现的【点击加载更多】闪现的问题。
3.优化 统一在RefresherStatus枚举中Loading取值。
4.优化 defaultPageNo&defaultPageSize修改为只允许number类型。
5.优化 提升兼容性&细节优化。

2.8.3(2024-11-27)

1.修复 doInsertVirtualListItem插入数据无效的问题。
2.优化 提升兼容性&细节优化。

2.8.2(2024-11-25)

1.优化 types中ZPagingRefZPagingInstance支持泛型。

2.8.1(2024-11-24)

1.新增 完整的propsslotsmethodsevents的typescript types声明,可在ts中获得绝佳的代码提示体验。
2.新增 virtual-cell-id-prefix:虚拟列表cell id的前缀,适用于一个页面有多个虚拟列表的情况,用以区分不同虚拟列表cell的id。
3.修复 在vue3+(微信小程序或QQ小程序)中,使用非内置列表写法时,若z-pagingswiper-item标签内的情况下存在的无法获取slot插入的cell高度的问题。
4.修复 在虚拟列表中分页数据小于1页时插入新数据,虚拟列表未生效的问题。
5.修复 在虚拟列表中调用refresh时,cell的index计算不正确的问题。
6.修复 在快手小程序中内容较少或空数据时z-paging未能铺满全屏的问题。
7.优化 events中的参数涉及枚举的部分,统一由之前的number类型修改为string类型,展示更直观!涉及的events:@query中的from参数;@refresherStatusChange中的status参数;@loadingStatusChange中的status参数;slot=refresher中的refresherStatus参数;slot=chatLoading中的loadingMoreStatus参数。更新版本请特别留意!

2.8.0(2024-10-21)

1.新增 全面支持鸿蒙Next。
2.修复 设置了refresher-complete-delay后,在下拉刷新期间调用reload导致的无法再次下拉刷新的问题。
3.优化 废弃虚拟列表transformY顶部占位方案,修改为空view占位。解决因使用旧方案导致的vue3中可能出现的虚拟列表闪动问题。提升虚拟列表的兼容性。