【HarmonyOS】如何实现应用内引用HSP模块中ArkUI组件

【关键字】

HSP开发、引入HSP模块中ArkUI组件

【写在前面】

在使用ArkTS开发HarmonyOS应用时,通常会定义一些公共组件或公共接口功能,此时可以将这些功能封装到HSP模块中,然后通过在HSP模块中导出组件或接口方式在其他模块中引用,可以实现应用内部代码与资源的共享。这里主要讲如何在entry模块中引用HSP模块中定义ArkUI组件的主要步骤,此处以API9 Stage模型HarmonyOS应用开发为例,hvigor版本为2.4.2。

【开发主要步骤】

步骤1:在HarmonyOS工程项目中,创建HSP模块,HSP模块可以在DevEco Studio中由指定模板创建,此处新增library模块,参考文档如下:

开发动态共享包

步骤2:在library模块中定义ArkUI组件,在"library/src/main/ets"目录下新增components文件夹,右键>New>ArkTS File新增名称为"MyTitleBar"的ets组件,如下图所示:

步骤3:在"library/src/main/ets/Index.ets"中导出ArkUI组件,此文件中可支持导出ts类和方法、ArkUI组件、native方法等,如下图所示:

注意:请检查"library/oh-package.json5"中是否添加main配置信息,如下所示:

步骤4:在其他模块就可以导入library模块并使用导出的组件与方法了,此处以entry模块为例,在"entry/oh-package.json5"添加依赖并点击"Sync Now"进行同步,同步后就可以在oh_modules中看到了。

步骤5:在需要使用的地方直接import使用即可。请注意此处不建议通过相对路径方式引用,否则当ArkUI组件中使用资源文件时,使用相对路径引用编译时可能会报错资源找不到。这样就实现引用HSP模块ArkUI组件功能了,其他类型导出和引用实现方式也大致相同,可具体参考相关文档。

【注意事项】

1、import HSP中组件或接口功能时,不建议使用相对路径,如下图所示,这样引入可能会导致编译失败。

2、添加dependencies依赖时,HSP不支持配置在工程级oh-package.json5被其他模块引用,需要配置在各自模块的oh-package.json5内,否则可能会编译运行报错。

【参考文档】

开发和引用动态共享包:开发及引用动态共享包参考

应用内HSP开发指导:应用内HSP开发指导参考

相关推荐
周胡杰4 小时前
组件导航 (HMRouter)+flutter项目搭建-混合开发+分栏效果
前端·flutter·华为·harmonyos·鸿蒙·鸿蒙系统
bestadc4 小时前
鸿蒙 Core File Kit(文件基础服务)之简单使用文件
harmonyos
SuperHeroWu76 小时前
【HarmonyOS 5】鸿蒙星闪NearLink详解
华为·蓝牙·harmonyos·nearlink·鸿蒙星闪·绿牙
积跬步DEV8 小时前
RN 鸿蒙混合开发实践(踩坑)
react native·华为·harmonyos
繁依Fanyi12 小时前
我的 PDF 工具箱:CodeBuddy 打造 PDFMagician 的全过程记录
java·pdf·uni-app·生活·harmonyos·codebuddy首席试玩官
Huang兄12 小时前
#跟着若城学鸿蒙# web篇-获取定位
harmonyos
zkmall14 小时前
Java + 鸿蒙双引擎:ZKmall开源商城如何定义下一代B2C商城技术标准?
java·开源·harmonyos
lqj_本人15 小时前
鸿蒙OS&UniApp实现视频播放与流畅加载:打造完美的移动端视频体验#三方框架 #Uniapp
uni-app·音视频·harmonyos
交叉编译之王 hahaha15 小时前
RK3568平台OpenHarmony系统移植可行性评估
华为·harmonyos
lqj_本人17 小时前
鸿蒙OS&UniApp 实现一个精致的日历组件#三方框架 #Uniapp
uni-app·harmonyos