【每日学点鸿蒙知识】多线程限制、axios组件下载进度问题、lpx问题、Web组件全局代理、ArrayList问题

1、HarmonyOS 多线程写法限制?

目前基于HarmonyOS taskpool、worker的多线程开发,对于数据对象的限制较多。而我们实际开发过程中,基于私有协议的业务请求收发包数据结构非常复杂,想在taskpool基础上做数据处理的异步化比较困难。

推荐napi_load_module_with_info:https://gitee.com/openharmony/docs/blob/b95d505363b96f16eaf5a5f75811f3e83b137832/zh-cn/application-dev/napi/use-napi-load-module-with-info.md

https://blog.csdn.net/maniuT/article/details/137089658

2、HarmonyOS axios组件,下载过程中没有执行onDownloadProgress的日志?

download一定要加上filePath 和 context参数设置filePath才会进入上传下载流程,否则就是普通请求,拿不到下载进度。不会自动清理。responseType设置arrayBuffer的话,也需要设置filepath

3、HarmonyOS lpx问题

应用使用lpx单位,A组件在手机上是占满屏幕,但在平板上时,由于平板过宽,在A组件左边会有一个导航栏,A组件只占2/3,但是由于A页面使用lpx单位,导致A页面的图标字体过大(lpx根据屏幕宽度换算),需要怎么解决。

根据组件宽度和屏幕宽度的比值换算下,组件宽度请参考链接:

https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-arkui-uicontext-V5#ZH-CN_TOPIC_0000001884757690__getrectanglebyid

4、HarmonyOS ArkTS Web组件如何设置全局代理?

web组件load页面展示,页面及所有资源需要走隧道代理才能正确显示,翻阅API未查到相关方法,如何设置全局代理。

connection.setAppHttpProxy方法设置全局网络代理。参考链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-net-connection-V5#ZH-CN_TOPIC_0000001847049896__connectionsetapphttpproxy11

5、HarmonyOS ArrayList 遇到问题?

Error message:The forEach method cannot be bound, 调用的对象是ArrayList

复制代码
export class LUBCUAAgreementInfo {
  id?: number
  type?: string
}

export class LUBCUAUnifyAuthSceneInfoResult {
  id?: number
  sceneCode?: string
  agreementInfoDTOS?: ArrayList<LUBCUAAgreementInfo>
}

调用代码

@Component
export struct LUBCUALoginView {
  @Prop agreementData?: LUBCUAUnifyAuthSceneInfoResult

  aboutToAppear(): void {
    this.agreementData?.agreementInfoDTOS?.forEach((value: LUBCUAAgreementInfo, index: number) => {

    })
  }
}

ArrayList是jsapi中的一个类。数组是基础数据结构。两者从本质来说不是同一个类型。将ArrayList换成Array就不会报错了。@Prop中建议使用Array,其中允许使用的类型可以参考:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-prop-V5

相关推荐
夜雨声烦丿5 小时前
Flutter 框架跨平台鸿蒙开发 - 思维导图开发教程
flutter·华为·harmonyos
IT陈图图6 小时前
基于 Flutter × OpenHarmony 开发的文本处理工具箱首页
flutter·华为·openharmony
小白阿龙6 小时前
鸿蒙+Flutter 跨平台开发——一款“随机宝盒“的开发流程
flutter·华为·harmonyos·鸿蒙
小雨青年6 小时前
鸿蒙 HarmonyOS 6 | 逻辑核心 (05):数据持久化 Preferences 的封装最佳实践
华为·harmonyos
哈哈你是真的厉害7 小时前
基础入门 React Native 鸿蒙跨平台开发:多种Switch 开关介绍
react native·react.js·harmonyos
AI_零食7 小时前
鸿蒙跨端框架 Flutter 学习 Day 6:异步编程:等待的艺术
学习·flutter·华为·交互·harmonyos·鸿蒙
全栈开发圈7 小时前
干货分享|鸿蒙6实战入门指南
华为·harmonyos
猛扇赵四那边好嘴.8 小时前
Flutter 框架跨平台鸿蒙开发 - 旅游足迹记录本应用开发教程
flutter·华为·harmonyos·旅游
鸣弦artha8 小时前
Flutter框架跨平台鸿蒙开发——Button组件基础
flutter·华为·harmonyos
C雨后彩虹8 小时前
羊、狼、农夫过河
java·数据结构·算法·华为·面试