首页 > 解决方案 > TypeScript:从现有类型创建更具限制性的类型

问题描述

我有一个定义类的库,例如:

class Foo{
    foo: 'a' | 'b';
    bar: string;

    // ...
};

由于我的实施,我知道当我进行查询时,foo: 'a'总是如此。如果不是,那将是一个错误。所以我正在尝试定义一种强制执行此操作的类型:

type FooA = Foo & {
    foo: 'a',
    bar: string
}

这似乎不起作用,并且类型foo设置为never.

我怎样才能限制这样的类型?

标签: typescript

解决方案


推荐阅读