gpt4 book ai didi

Typescript - 如何创建具有多种类型的数组

转载 作者:行者123 更新时间:2023-12-04 01:03:49 25 4
gpt4 key购买 nike

我有一个通用接口(interface)和两个接口(interface)“Person”和“Employee”,它们扩展了第一个接口(interface):

    export interface Common {
id: number,
name: string
}

export interface Person extends Common {
age: number;
}

export interface Employee extends Common {
role: string;
}
我需要一个与这些接口(interface)混合的数组,例如:
listOfPeople: Person[] | Employee[] = [{id: 1, name: 'George', age: 4}, {id: 2, name: 'Micheal', role: 'software developer'}];
但这样我得到了一个错误。获得我想要的结果的正确方法是什么?

最佳答案

您可以组合这些类型并将它们声明为 listOfPeople 的类型。使用联合类型。
所以我猜这会起作用listOfPeople: (Person|Employee)[]因为listOfPeople是一个可以包含任何这些的数组。你必须让 TS 知道它是一个数组。const listOfPeople: (Person|Employee)[] = [{id: 1, name: 'George', age: 4}, {id: 2, name: 'Micheal', role: 'software developer'}];

关于Typescript - 如何创建具有多种类型的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67192601/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com