HarmonyOS 鸿蒙Next 泛型怎么new一个对象呢?

发布于 1周前 作者 yibo5220 来自 鸿蒙OS

HarmonyOS 鸿蒙Next 泛型怎么new一个对象呢?

怎么实例化一个泛型

export class BaseResponse<T> {
  code: string = '';
  msg: string = '';
  data: T = null;
}

data: T = null
会报错

Type 'null' is not assignable to type 'T'.
'T' could be instantiated with an arbitrary type which could be unrelated to 'null'. <ArkTSCheck>

更多关于HarmonyOS 鸿蒙Next 泛型怎么new一个对象呢?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

arkTs需要显式数据类型,可以按下面方式初始化值

data: T = null as T;

更多关于HarmonyOS 鸿蒙Next 泛型怎么new一个对象呢?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS(鸿蒙)Next中,泛型的使用与Java或C#等语言中的泛型机制类似,但具体的语法和实现可能会因鸿蒙的特定框架和API而有所不同。在鸿蒙系统中,如果你需要通过泛型来创建一个对象,通常你会用到泛型类或泛型方法,并通过类型参数来指定具体的类型。

在鸿蒙系统中,假设你有一个泛型类MyGenericClass<T>,你可以这样创建一个对象:

// 注意:这里虽然使用了Java语法示例,但鸿蒙的语法可能有所不同,但概念相通
MyGenericClass<String> myObject = new MyGenericClass<>();

然而,鸿蒙系统可能使用自己的编程语言或框架,比如ArkUI(使用TS/JS扩展的UI框架)或者eTS(Enhanced TypeScript),在这些环境中,创建泛型对象的方式可能会有所不同。例如,在TypeScript中,你可能会这样写:

let myObject: MyGenericClass<string> = new MyGenericClass();

但请注意,具体的实现取决于鸿蒙系统中你使用的具体语言和框架。如果MyGenericClass是一个鸿蒙特定的类,你需要参考鸿蒙的官方文档或API指南来了解如何正确地实例化这个泛型类。

如果问题依旧没法解决请联系官网客服,官网地址是 https://www.itying.com/category-93-b0.html

回到顶部