首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >TypeScript中的“复合类型”

TypeScript中的“复合类型”
EN

Stack Overflow用户
提问于 2018-06-07 03:51:28
回答 1查看 2.3K关注 0票数 4

我记得在TypeScript中看到过一个特性,在这个特性中,一个类型可以由另一个类型的属性以及它自己的属性组成。但我不确定我是否没记错。请考虑以下几点:

代码语言:javascript
复制
// type or interface
type X = {
  a: number
};

// type or interface
// composes properties from X ???
type XPlus = {
  [P: keyof X], // include properties from X
  b: boolean    // add a new property
};

// instance includes properties from both X and XPlus
const instance: XPlus = {
  a: 100,
  b: false
};

这似乎起作用了,但我不确定它是不是在做我认为的事情。这样的特性存在吗?如果存在,它叫什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-07 03:57:33

您可以只使用交叉点类型

代码语言:javascript
复制
// type or interface
type X = {
    a: number
};


type XPlus = X & {
    b: boolean    // add a new property
};

// instance includes properties from both X and XPlus
const instance: XPlus = {
    a: 100,
    b: false
};
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50728485

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档