首页 > 解决方案 > 是否有可能拥有一个具有一个属性或另一个属性的接口?

问题描述

我想要这样的界面:

interface EitherOr {
  first: string;
  second: number;
}

但要确保它只有一个firstsecond。这可能吗?

标签: typescript

解决方案


使用注释中已建议的联合类型。这意味着该类型始终是这两种类型之一。

interface First {
   first: string;
}

interface Second {
   second: number;
}

type EitherOr = First | Second;

推荐阅读