首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在TypeScript中键入rest运算符对象

在TypeScript中键入rest运算符对象
EN

Stack Overflow用户
提问于 2018-08-30 03:11:57
回答 1查看 832关注 0票数 2

我试图使用rest操作符从对象中删除属性,但不知道如何在新对象上强制使用类型。

代码语言:javascript
复制
interface Ab {
  a: string;
  b: number;
}

interface Bc {
  b: number;
  c: boolean | undefined;
}

const ab: Ab = { a: 'a', b: 1};
const {a, ...bc} = {...ab, c: true};

我知道bc现在有一种类型

代码语言:javascript
复制
{
  b: number;
  c: boolean;
}

有没有办法强制bc显式地属于Bc类型?

EN

回答 1

Stack Overflow用户

发布于 2018-08-30 04:06:20

实际上,这是一个非常有趣和棘手的问题:)所以这是我的解决方案:

代码语言:javascript
复制
interface Abc extends Ab, Bc {
  bc: Bc;
}

const ab: Ab = { a: 'a', b: 1};
const { a, ...bc }: Abc = { ...ab, c: true } as Abc;

Playground link

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52084571

复制
相关文章

相似问题

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