【问题标题】:Types in Angular/Typescript interfacesAngular/Typescript 接口中的类型
【发布时间】:2021-09-27 14:19:46
【问题描述】:

在我的应用程序中,我有 BaseObjectInterface,并且我在许多接口中扩展它,例如 AObjInterfaceBObjInterface 等。 然后我有一个父接口,其中包含BaseObjectInterface 数组。我希望它接受所有扩展基数的类。例如AObjInterfaceBObjInterface 等。遗憾的是,它不是那样工作的。除了显式列出所有类型之外,我还能用其他方式吗?

我有什么: list: Array<BaseObjectInterface>

我不想要的: list: Array<AObjInterface|BObjInterface>

我想在该列表中添加什么: [ New BaseObjectInterface(), new AObjInterface(), new BObjInterface()]

【问题讨论】:

    标签: angular typescript interface polymorphism extending


    【解决方案1】:

    如果,如您所说,BaseObjectInterface 是 AObjInterface 和 BObjInterface 的父级,那么类型可以只是 Array<BaseObjectInterface>TypeScript Playground example

    【讨论】:

    • 我在从 http 请求接收对象并将它们转换到该接口以及使用 BaseObjectInterface 然后将任何扩展对象放入其中时遇到一些问题。但仍然感谢 Playground 示例
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-04-17
    • 1970-01-01
    • 1970-01-01
    • 2021-07-31
    • 2017-11-16
    • 2018-09-15
    • 2019-04-27
    相关资源
    最近更新 更多