HarmonyOS 鸿蒙Next 使用 OpenHarmony-SIG/PullToRefresh插件,什么上拉加载、下拉刷新什么时候能通过接口返回成功与否来控制Promise的resolve方法执行

发布于 1周前 作者 ionicwang 来自 鸿蒙OS

HarmonyOS 鸿蒙Next 使用 OpenHarmony-SIG/PullToRefresh插件,什么上拉加载、下拉刷新什么时候能通过接口返回成功与否来控制Promise的resolve方法执行

使用 OpenHarmony-SIG/PullToRefresh 插件,什么上拉加载、下拉刷新什么时候能通过接口返回成功与否来控制 Promise 的 resolve 方法执行,每次下拉刷新回调时,接口请求还没完成,1 后刷新状态就更新完成了,好难受呀

// 可选项,下拉刷新回调
onRefresh: () => {
  this.isRefresh = true
  this.pageIndex = 1
  this.getOAlist()   // 调用接口
  return new Promise<string>((resolve, reject) => {
    resolve('刷新成功')
  });
},

更多关于HarmonyOS 鸿蒙Next 使用 OpenHarmony-SIG/PullToRefresh插件,什么上拉加载、下拉刷新什么时候能通过接口返回成功与否来控制Promise的resolve方法执行的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

7 回复

网络请求成功的时候再去调用resolve(‘刷新成功’)

更多关于HarmonyOS 鸿蒙Next 使用 OpenHarmony-SIG/PullToRefresh插件,什么上拉加载、下拉刷新什么时候能通过接口返回成功与否来控制Promise的resolve方法执行的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


是的,但是,每次this.getOAlist这个还没走完就已经return了。怎么才能让Refresh知道接口的请求状态呢?

+1,遇到和博主一样的问题

@abner/refresh(V1.3.6)用这个刷新组件。这一个不好用,

@abner/refresh(V1.3.6)好用吗? 现在这个太差了,

感觉用起来还挺舒服的,OpenHarmony-SIG/PullToRefresh不好用,

在HarmonyOS鸿蒙Next系统中,使用OpenHarmony-SIG提供的PullToRefresh插件时,要控制上拉加载和下拉刷新的成功与否来决定Promise的resolve方法执行,你可以通过以下方式实现:

首先,需要确保PullToRefresh插件已经正确集成到你的鸿蒙项目中。然后,在上拉加载和下拉刷新的回调函数中,根据操作的成功与否来执行Promise的resolve或reject方法。

具体实现步骤如下:

  1. 创建一个Promise对象,用于管理异步操作。
  2. 在PullToRefresh的监听事件中,处理上拉加载和下拉刷新的逻辑。
  3. 在加载或刷新成功的回调中,调用Promise的resolve方法。
  4. 在加载或刷新失败的回调中,调用Promise的reject方法。

例如,对于下拉刷新:

let refreshPromise = new Promise((resolve, reject) => {
    pullToRefresh.onRefresh(() => {
        // 执行刷新逻辑
        if (/* 刷新成功 */) {
            resolve('刷新成功');
        } else {
            reject('刷新失败');
        }
    });
});

refreshPromise.then(result => {
    console.log(result);
}).catch(error => {
    console.error(error);
});

类似地,为上拉加载设置Promise的resolve和reject。

如果问题依旧没法解决请联系官网客服,官网地址是 https://www.itying.com/category-93-b0.html

回到顶部