#鸿蒙通关秘籍#在HarmonyOS中如何封装和处理网络请求返回的数据?

HarmonyOS
2024-11-26 15:45:03
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
编程小先锋
  1. 封装网络请求方法,将请求处理与数据处理进行分离。
  2. 使用BaseResponse类进行返回数据的封装。
  3. 在请求类中写一个通用的方法,例如pageRefresh,以处理各种数据返回。
    public pageRefresh(success: boolean, page: number, total: number, data: Array<T>, controller: RefreshController, pageNums: (pages: number) => void) {
      if (success) {
        if (page == 1) {
          this.setNewData(data);
          controller.refreshSuccess();
          pageNums(2);
    
          if (this.totalCount() == 0) {
            controller.viewEmpty();
          }
        } else {
          this.addAllData(data);
          controller.loadSuccess();
          pageNums(data.length == 0 ? page : (page + 1));
        }
        controller.hasMore(this.totalCount() < total)
      } else {
        if (controller.getStatus() == PullStatus.Refresh) {
          controller.refreshError();
        } else {
          controller.loadError();
        }
        if (page == 1) {
          controller.viewError();
        }
      }
    }
    
    • 1.
    • 2.
    • 3.
    • 4.
    • 5.
    • 6.
    • 7.
    • 8.
    • 9.
    • 10.
    • 11.
    • 12.
    • 13.
    • 14.
    • 15.
    • 16.
    • 17.
    • 18.
    • 19.
    • 20.
    • 21.
    • 22.
    • 23.
    • 24.
    • 25.
    • 26.
    • 27.
  4. 处理加载成功、失败、空数据等各种场景,从而提升用户体验。
分享
微博
QQ
微信
回复
2024-11-26 16:45:04


相关问题
网络请求数据处理
896浏览 • 1回复 待解决