首页 > 其他分享 >【HarmonyOS】如何实现应用内引用HSP模块中ArkUI组件

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

时间:2023-09-14 11:03:18浏览次数:37  
标签:library 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模块,参考文档如下:

开发动态共享包

cke_14089.png​​

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

cke_2033.png

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

cke_3250.png

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

cke_4485.png

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

cke_5988.png

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

cke_8261.png

 

【注意事项】

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

cke_10130.png

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

 

【参考文档】

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

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

标签:library,HarmonyOS,HSP,引用,模块,组件,ArkUI
From: https://www.cnblogs.com/mayism123/p/17701911.html

相关文章

  • HarmonyOS/OpenHarmony应用开发-DevEco Studio帮助快速入门的使用
    DevEcoStudio内置有帮助中心,初学HarmonyOS及OpenHarmony应用、元服务的开发者,通过内置的帮助中去系统的学习相关内容,是边练边学,快速上手的最佳方式。一、帮助二、快速开始三、HarmonyOS应用、元服务开发相关四、OpenHarmony应用、元服开发相关五、更多的常用基础知识与技巧了解学......
  • fyne container.NewHSplit水平分割容器 Go golang
    环境:gofyne 要求:go项目中将窗口分成左右两个容器,实现窗口分割效果:实现代码:1packagemain23import(4"fyne.io/fyne/v2"5"fyne.io/fyne/v2/app"6"fyne.io/fyne/v2/container"7"fyne.io/fyne/v2/widget"8)91......
  • OpenHarmony—应用间HSP开发指导
     应用间HSP用于不同应用间的代码、资源共享。 应用间HSP的宿主应用是一种特殊状态的应用,只能由一个HSP组成,不会独立运行在设备上,而是被普通应用模块的依赖项引用。当普通应用运行时,通过动态调用的方式使用应用间HSP提供的能力,从而实现应用自身所需要的功能。注意事项1. 应......
  • HarmonyOS/OpenHarmony(Stage模型)应用开发组合手势(三)互斥识别
    互斥识别组合手势对应的GestureMode为Exclusive。互斥识别组合手势中注册的手势将同时进行识别,若有一个手势识别成功,则结束手势识别,其他所有手势识别失败。以在一个Column组件上绑定单击手势和双击手势组合而成的互斥识别组合手势为例,由于单击手势只需要一次点击即可触发而双击手势......
  • HarmonyOS/OpenHarmony(Stage模型)应用开发组合手势(二)并行识别
    并行识别组合手势对应的GestureMode为Parallel。并行识别组合手势中注册的手势将同时进行识别,直到所有手势识别结束。并行识别手势组合中的手势进行识别时互不影响。以在一个Column组件上绑定点击手势和双击手势组成的并行识别手势为例,由于单击手势和双击手势是并行识别,因此两个手......
  • HarmonyOS/OpenHarmony(Stage模型)应用开发组合手势(一)连续识别
    组合手势由多种单一手势组合而成,通过在GestureGroup中使用不同的GestureMode来声明该组合手势的类型,支持连续识别、并行识别和互斥识别三种类型。00001. GestureGroup(mode:GestureMode,...gesture:GestureType[])mode:必选参数,为GestureMode枚举类。用于声明该组合手势的类型。ge......
  • 开发指导—利用CSS动画实现HarmonyOS动效(一)
    注:本文内容分享转载自HarmonyOS Developer官网文档一. CSS语法参考CSS是描述HML页面结构的样式语言。所有组件均存在系统默认样式,也可在页面CSS样式文件中对组件、页面自定义不同的样式。请参考通用样式了解兼容JS的类Web开发范式支持的组件样式。尺寸单位● 逻辑像素px(文档中以......
  • OpenHarmony应用ArkUI 状态管理开发范例
     本文转载自《#2023盲盒+码# OpenHarmony应用ArkUI 状态管理开发范例》,作者:zhushangyuan_ 本文根据橘子购物应用,实现ArkUI中的状态管理。在声明式UI编程框架中,UI是程序状态的运行结果,用户构建了一个UI模型,其中应用的运行时的状态是参数。当参数改变时,UI作为返回结果,也将......
  • 准备HarmonyOS开发环境
    引言在开始HarmonyOS开发之前,需要准备好开发环境。本章将详细指导你如何安装HarmonyOSSDK、配置开发环境、创建HarmonyOS项目。目录安装HarmonyOSSDK配置开发环境创建HarmonyOS项目总结1.安装HarmonyOSSDKHarmonyOSSDK是开发HarmonyOS......
  • 【HarmonyOS】一文教你如何使用低代码平台网格布局动态加载数据
    【关键字】低代码平台、AGC、API6、网格布局、数据模型 【写在前面】正式开工之前,先来说一下今天要实现的内容,今天会实现一个网格布局的展示,我会创建一个数据模型,然后网格列表的数据从数据模型中获取,从而实现一个动态展示的效果。在实现之前,先来简单说一下什么是数据模型?在......