【每日学点鸿蒙知识】多线程限制、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

相关推荐
高心星1 天前
鸿蒙5.0应用开发——V2装饰器@Provider和@Consumer的使用
harmonyos
ChinaDragon1 天前
HarmonyOS:ArkTS卡片页面刷新
harmonyos
HMSCore1 天前
通知语音播报功能,解锁全新体验
harmonyos
HarmonyOS_SDK1 天前
通知语音播报功能,解锁全新体验
harmonyos
高心星1 天前
鸿蒙5.0应用开发——V2装饰器@ObservedV2和@Trace的使用
harmonyos
城中的雾1 天前
HarmonyOS应用拉起系列(三):如何直接拉起腾讯/百度/高德地图进行导航
前端·javascript·harmonyos
程序员潘Sir1 天前
鸿蒙应用开发从入门到实战(七):ArkTS组件声明语法
harmonyos·鸿蒙
高心星2 天前
鸿蒙5.0项目开发——V2装饰器@Event的使用
harmonyos
ChinaDragon2 天前
HarmonyOS:创建ArkTS卡片
harmonyos