HarmonyOS module中导出功能没有按需加载问题

例如在工程中添加一个module,module中增加两个ets文件,这两个文件中分别对外暴露一些功能接口,然后再module的index中导出这两个文件中的接口,然后在entry的index.ets导入某一个文件中的一个接口,但是运行发现module中所有的ets文件都被导入进来了,不是按需导入,我怎样定义才能够按需导入,而不是全部导入

Module中两个文件示例

// AppModule.ets
export function getAppName() {
  return ''
}
export function  getAppVersion () {
  return ''
}
console.log('AppModule is loaded')

// DevModule
export function getDeviceType() {
  return 'xxxxx'
}

export function getDeviceName() {
  return 'xxxxx'
}
console.log('DevModule is loaded')

// module的index文件
export { getAppName, getAppVersion } from './src/main/ets/AppModule'
export { getDeviceType, getDeviceName } from './src/main/ets/DevModule'

// entery中的index
import { getDeviceType } from 'libraryA'

@Entry
@Component
struct Index {
  @State message: string = getDeviceType();

  build() {
    Row() {
      Column() {
        Text(this.message)
          .fontSize(50)
          .fontWeight(FontWeight.Bold)
      }
      .width('100%')
    }
    .height('100%')
  }
}
HarmonyOS
1天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
put_get

可以采取使用动态import的方式解决 (在需要使用的地方import 需要使用的方法)

import('library/src/main/ets/components/mainpage/DevModule').then((ns: ESObject) => {
  console.log("xxx" + ns.getDeviceType())
})
分享
微博
QQ
微信
回复
1天前
相关问题
HarmonyOS 按需加载功能报错
38浏览 • 1回复 待解决
HarmonyOS HAPHSP按需加载如何配置
120浏览 • 1回复 待解决
HarmonyOS 远程动态按需加载
0浏览 • 1回复 待解决
按需加载场景中加载动态模块失败
1655浏览 • 1回复 待解决
HarmonyOS 按需分发问题
252浏览 • 1回复 待解决
HarmonyOS导出多个类问题
515浏览 • 1回复 待解决
Vue工程导出的dist, webview无法加载
253浏览 • 1回复 待解决
HarmonyOS module打包问题
92浏览 • 1回复 待解决
HarmonyOS @Export与@Style的导出问题
454浏览 • 1回复 待解决
鸿蒙module依赖报错问题
12940浏览 • 1回复 待解决
关于鸿蒙的module依赖问题
11581浏览 • 1回复 待解决
HarmonyOS没有指纹登录功能
203浏览 • 1回复 待解决
HarmonyOS 下拉刷新,上拉加载功能
45浏览 • 1回复 待解决
HarmonyOS RN功能依赖包加载失败
83浏览 • 1回复 待解决