【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开发指导参考

相关推荐
__Benco8 小时前
OpenHarmony子系统开发 - DFX(一)
人工智能·harmonyos
Samson Bruce8 小时前
从零开始开发HarmonyOS应用并上架
华为·harmonyos
90后的晨仔10 小时前
鸿蒙开发报错Argument of type '(item: ObjectData) => number' is not xxxx
harmonyos
HMS Core10 小时前
【FAQ】HarmonyOS SDK 闭源开放能力 —Push Kit(12)
华为·harmonyos
__Benco12 小时前
OpenHarmony子系统开发 - 安全(十)
人工智能·harmonyos
王喆12 小时前
跨平台全屏效果实现方案:HarmonyOS、Android与iOS实践总结
flutter·harmonyos
DADIAN_GONG13 小时前
incomplete command on Huawei switch
linux·运维·华为
weixin_4045512415 小时前
华为数字化转型-平台篇
华为·平台·数字化转型·总结
~樱小路~17 小时前
网络:华为数通HCIA学习:IP路由基础
网络·学习·华为
电手18 小时前
纯国产系统,首款鸿蒙电脑下月发布
华为·电脑·harmonyos