打字稿堆叠接口

时间:2019-12-18 16:25:21

标签: typescript

Typescript是否具有子集接口的概念。

有一个父界面parent如下:

interface parent {
    a?: string;
    b?: string;
}

还有其他接口onetwo

interface one {
    a: string
}
interface two {
    b: string
}

onetwo都不能添加父界面中不存在的字段。这可能吗?

1 个答案:

答案 0 :(得分:1)

  

一个和两个都不应该添加父界面中不存在的字段。

这在某种程度上与TypeScript的结构化打字原理背道而驰,但是如果您确实需要此功能,请参见https://gist.github.com/greglockwood/1610ef83d0726e0e6c021d46cb573e68NoExtraProperties

要点来自Is it possible to restrict typescript object to contain only properties defined by its class ?,这可能对其他背景也有帮助。