借助 NPM 生态,你可以将自有 JavaScript/ETS 库发布到公共仓库,实现跨项目复用。本文以 MiniCanvas 为例,讲解在 Gitee 上创建、配置、发布与升级 OpenHarmony 三方库的完整流程。

一、初始化库项目

  1. 创建空模板
    在 DevEco Studio 中选择 “Empty Ability”,完成项目启动。

  2. 添加 Library 模块
    右键项目 → New Module → 选择 “OHOS Library(ETS)”,命名为 mini_canvas

  3. 源码与入口
    将绘图库源码放入模块下的 main/ets/mini_canvas.ets;在 index.ets 中导出核心 API:

    export { MiniCanvas, Paint, ICanvas } from './mini_canvas';
    
  4. 配置 package.json
    在模块根目录创建或修改:

    {
      "name": "@ohos/mini_canvas",
      "version": "1.0.0",
      "main": "index.ets",
      "description": "简化 Canvas 绘图",
      "repository": {"type":"git","url":"git+https://gitee.com/ark-ui/MiniCanvas.git"},
      "license": "MulanPSL-2.0",
      "dependencies": {}
    }
    
  5. 推送到 Gitee

    cd mini_canvas
    git init
    git add .
    git commit -m "initial commit"
    git remote add origin https://gitee.com/ark-ui/MiniCanvas.git
    git push -u origin master
    

二、在项目中安装与使用

  1. 安装依赖
    在目标 OpenHarmony 项目 entry/ 下运行:

    npm install git+https://gitee.com/ark-ui/MiniCanvas.git
    
  2. 引入与调用

    import { MiniCanvas, Paint } from '@ohos/mini_canvas';
    
    @Entry @Component struct Demo {
      build() {
        MiniCanvas({
          attribute: { width:200, height:200, background:"#eef" },
          onDraw: (canvas) => {
            const paint = new Paint();
            paint.setStroke(true).setStrokeWidth(5);
            canvas.drawCircle(100, 100, 80, paint);
          }
        });
      }
    }
    
  3. 升级版本
    当库在 Gitee 上打了新标签 v1.1.0 后,可通过:

    npm install git+https://gitee.com/ark-ui/MiniCanvas.git#v1.1.0
    

    然后重新 clean & build 即可。


通过以上三篇文章,你已掌握 ArkUI 中:

  • 插槽机制 (@BuilderParam) 的灵活应用;
  • 自定义下拉刷新列表 的手势与滚动冲突处理;
  • NPM 库 在 Gitee 上的发布、安装与版本管理。
Logo

讨论HarmonyOS开发技术,专注于API与组件、DevEco Studio、测试、元服务和应用上架分发等。

更多推荐