typescript - 如何在 TypeScript 中声明不同类型的对象数组?

标签 typescript

我有一个数组,其中的元素表示 TextInput、DateInput、Checkbox 等类型的 HTML 形式。

如何将变量类型声明为可以是这些类型中的任何一种的元素数组?

像这样

(TextInput | DateInput | Checkbox)[]

最佳答案

你可以这样做:

let myArray: Array<TextInput | DateInput | Checkbox> = [];

你还可以:

type MyArrayTypes = TextInput | DateInput | Checkbox;
let myArray: MyArrayTypes[] = [];

这两种定义数组的方式是等价的:

let a: number[] = [];
// is just like:
let b: Array<number> = [];

但有时第二种方式更适合,就像您的情况一样。

关于typescript - 如何在 TypeScript 中声明不同类型的对象数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38479427/

相关文章:

javascript - Angular 6 setTimeout 和 clearTimeout 错误

typescript - 安全地消除 typescript 中的无效性

typescript - 如何在 TypeScript 泛型中动态指定类型?

typescript - 如何从对象元组创建对象类型?

javascript - 如何在单独的项目中使用自动生成的 typescript 声明文件?

javascript - 尝试 - catch() 不捕获错误而是抛出错误

TypeScript 映射类型值取决于键

reactjs - 接口(interface) A 错误地扩展了接口(interface) B

typescript - 调用方法表单 setInterval() 导致异常

postgresql - 通过关系的深层属性查询