HarmonyOS 函数中调用动态import,如何设定返回类型?

文档中有类似这样的代码 import('myHar').then((ns:ESObject) => { console.log(ns.add(3, 5)); }); 返回的类型是ESObject,但是这样会导致调用方法时,代码提醒不够友好,无法直接使用ns+“.”,后面就自自动带出其方法。 我现在有这样一个场景,我有个函数,其中使用了动态import,我该如何指定返回类型: async getLogin() { return await import('@hik/login') } 虽然我可以不指定返回类型,由系统推断,但是如果我定义了接口,接口要求实现getLogin()方法,此时需要指定返回类型,如何指定?如果指定返回类型为ESObject,就会如我上面所说,代码提醒不够友好,多人协作开发容易出问题,如果有人把方法名改了,调用方无法在编译阶段感知。

HarmonyOS
2天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Heiang

请参考:

function DynamicNumber() :number{
  let number1:number = 0;
  import('../Calc').then((ns:ESObject) => {
    let calc:ESObject = new ns.Calc();  // 实例化类Calc
    number1 = calc.instanceAdd(10, 11);  // 调用成员函数instanceAdd()
    console.log('Index DynamicImport I am harlibrary in staticAdd, %d + %d = %d', 10, 11, number1);
    return number1;
  });
  return number1;
}
分享
微博
QQ
微信
回复
2天前
相关问题
什么导入场景适合使用动态import
510浏览 • 1回复 待解决
HarmonyOS 如何调用函数
25浏览 • 1回复 待解决
动态import 变量表达式
1206浏览 • 1回复 待解决
Emitter如何声明回调函数类型
1799浏览 • 1回复 待解决
HarmonyOS @Watch函数调用问题
406浏览 • 1回复 待解决
数组的map函数, 如何返回interface?
233浏览 • 1回复 待解决
ArkTS调用C++类的成员函数
1315浏览 • 1回复 待解决