HarmonyOS 鸿蒙Next ArkUI框架,不同module之间的引用

HarmonyOS 鸿蒙Next ArkUI框架,不同module之间的引用 1、首先新建一个ArkUI框架的应用,首页为page/index.ets;

2、构建一个Harmony OS Library,在library里面新建Module1.ets文件,

declare module "Module1" {
  class Square {
    width: number
  }

  class Triangle {
    height: number
  }
}

3、在entry模块里面的page/index.ets引用"Module1"

entry模块的build.gradle配置依赖library

dependencies {
    implementation project(':lepton-component:emv')
}

代码引用:

import * as M1 from "Module1"
let square: M1.Square = {
  width: 10
}

报错:

ETS:ERROR File: E:\HARMONY\LSamples\LeptonEts\entry\src\main\ets\default\pages\index.ets:4:21

TS2307: Cannot find module ‘Module1’ or its corresponding type declarations.

注:上面declare module改成declare namespace也不行。

请问,怎么实现ets文件跨模块调用?


更多关于HarmonyOS 鸿蒙Next ArkUI框架,不同module之间的引用的实战教程也可以访问 https://www.itying.com/category-93-b0.html

5 回复

开发者您好,经验证,不同module之间可以正常引用,建议重新检查相关代码

更多关于HarmonyOS 鸿蒙Next ArkUI框架,不同module之间的引用的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


楼主你好,问题已经反馈给研发,进度会第一时间刷新

试下这个呢:

export default struct Module1 {
 XXXXXX
}
import M1 from '../xxx/xxx/index.ets' 需要绝对路径

欢迎开发小伙伴们进来帮帮楼主

在HarmonyOS鸿蒙系统中,Next ArkUI框架用于构建跨设备的用户界面。对于不同module(模块)之间的引用,主要依赖于鸿蒙系统的模块化和组件化设计。

在ArkUI框架中,不同module之间的引用通常通过以下几种方式实现:

  1. 导入模块:在需要引用其他module的代码中,通过特定的导入语句(如import)来引入目标module的公共接口或类。这要求被引用的module必须提供清晰的公共API。

  2. 依赖管理:鸿蒙系统可能支持类似Maven或Gradle的依赖管理工具,允许开发者在项目的配置文件中声明对其他module的依赖。这样,构建系统会在构建过程中自动解析并包含这些依赖。

  3. 服务注册与发现:对于需要跨module通信的场景,鸿蒙系统可能提供了服务注册与发现机制。服务提供者可以在系统中注册服务,而服务消费者则可以通过查找服务来实现跨module的通信。

  4. 全局变量或事件总线:虽然不推荐作为首选方案,但在某些简单场景下,可以通过全局变量或事件总线来在不同module之间传递数据或事件。

请注意,具体的实现方式可能因鸿蒙系统的版本和ArkUI框架的更新而有所变化。如果上述方法无法满足你的需求或遇到问题依旧没法解决,请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部