Uniapp微信小程序开发:onPullDownRefresh
简介
本文介绍了微信小程序中封装下拉刷新功能的实现方案。通过将刷新逻辑抽象为通用方法,统一处理加载提示和错误反馈。关键点包括:
1)正确传递刷新函数引用;
2)配置pages.json启用下拉刷新;
3)从正确路径引入onPullDownRefresh;
4)封装RefreshAPI处理加载状态和异常;
5)建议通过utils目录统一管理API模块。
文中提供了完整代码示例,解决了页面渲染时机等常见问题,最终实现只需在页面中调用MyAPI.doPullDownRefresh(reload)即可完成下拉刷新功能。
前言
在微信小程序中,往往需要提供用户下拉刷新功能,这个功能基本上就是重新加载本页面的数据。
为了为用户提供更好的体验,以及编码方便,我们建议把刷新功能直接封装成一个抽象的方法,然后在每个页面中调用即可。这里遇到几个关键点:
刷新的方法传入的问题
const reload=()=>{
//加载数据,修改ref数据的值之类的功能
}
那么 在 onPullDownRefresh方法中,这样传入reload即可,这里只传入方法名,不要加括号。
这个doPullDownRefresh就是我抽象出来的方法,在每个页面中都可以调用。
onPullDownRefresh(() => {MyAPI.doPullDownRefresh(reload)})
其实在每个页面中加上上述一句代码,就能够了。
页面改造
按照1的操作完毕,其实在下拉页面的时候,onPullDownRefresh还不能执行。
还需要修改pages.json文件中对应的页面属性
{"path": "pages/home/home","style": {"enablePullDownRefresh":