基于DevEco Studio的OpenHarmony应用原子化服务(元服务)入门教程

一、创建项目

二、创建卡片

三、应用服务代码

Index.ets

复制代码
@Entry
@Component
struct Index {
  @State TITLE: string = 'OpenHarmony';
  @State CONTEXT: string = '创新召见未来!';

  build() {
    Row() {
      Column() {
        Text(this.TITLE)
          .fontSize(30)
          .fontColor(0xFEFEFE)
          .fontWeight(600)
        Text(this.CONTEXT)
          .fontSize(30)
          .fontColor(0xFEFEFE)
          .fontWeight(600)
          .margin(20)
      }
      .width('100%')
    }
    .width('100%')
    .height('100%')
    .backgroundColor(0x42218c)

  }
}

四、卡片代码

WidgetNewCard.ets

复制代码
@Entry
@Component
struct WidgetNewCard {
  /*
   * The title.
   */
  readonly TITLE: string = 'OpenHarmony';
  readonly CONTEXT: string = '技术构建万物智联';
  /*
   * The action type.
   */
  readonly ACTION_TYPE: string = 'router';

  /*
   * The ability name.
   */
  readonly ABILITY_NAME: string = 'EntryAbility';

  /*
   * The message.
   */
  readonly MESSAGE: string = 'add detail';

  /*
   * The with percentage setting.
   */
  readonly FULL_WIDTH_PERCENT: string = '100%';

  /*
   * The height percentage setting.
   */
  readonly FULL_HEIGHT_PERCENT: string = '100%';

  build() {
    Row() {
      Column() {
        Text(this.TITLE)
          .fontSize(14)
          .fontColor(0xFEFEFE)
          .fontWeight(600)
        Text(this.CONTEXT)
          .fontSize(14)
          .fontColor(0xFEFEFE)
          .fontWeight(600)
      }
      .width(this.FULL_WIDTH_PERCENT)
    }
    .backgroundColor(0x42218c)
    .height(this.FULL_HEIGHT_PERCENT)
    .onClick(() => {
      postCardAction(this, {
        "action": this.ACTION_TYPE,
        "abilityName": this.ABILITY_NAME,
        "params": {
          "message": this.MESSAGE
        }
      });
    })
  }
}

五、运行案例

六、案例卡片效果

注释说明:

现最新版的DevEco Studio中OpenHarmony项目在本目录下调整。将runtimeOS:""中间内容调为OpenHarmony即可。这种方式,不用开发板,通过预览器就可以查看项目样式效果。

完整项目代码地址:

HarmonyOSAPP开发相关组件: 深圳市蛟龙腾飞网络科技有限公司 - Gitee.com

相关推荐
沐浴露z1 分钟前
学习通“只能录入不能粘贴” 解决方案与原理分析
javascript
多看书少吃饭6 分钟前
Vite开发环境按需编译是怎么实现的
前端
ybb_ymm14 分钟前
@Async修饰不生效
java·前端·数据库
Sapphire~17 分钟前
Vue3-03 熟悉src文件夹及Vue文件格式
前端·javascript·vue.js
快乐星球37222 分钟前
鸿蒙5、6用户h5页面使用schemeURL跳转小程序失败
前端
ChangYan.37 分钟前
Electron使用ffi-napi报错External buffers are not allowed解决办法
前端·javascript·electron
Sept94041 分钟前
详解实现属性的全面拦截
前端
墨渊君41 分钟前
2025 年: 一半无业游民、一半外包牛马
前端·年终总结
借个火er41 分钟前
从零搭建 Uniapp 企业级项目模板
前端
阿民_armin44 分钟前
移动端长列表「返回原位置」的完整实践
前端·javascript·vue.js