typescript - 你好,知道如何自动推断元组吗?

标签 typescript

知道如何自动推断元组吗?当前的推断是 (string|boolean)[] ,这里的问题是我只希望一种情况 (A) 具有 false 和 string 数组,而其他情况仅是 bool 值。 如何通过自动推理或任何其他方法来实现此目的,而不必键入整个对象,因为它有点长。

const inicialErrState: { [key: string]: boolean; a: [boolean, string] } = {
    a: [false, ''],
    b: false,
    c: false,
    d: false,
  }; 
  

最佳答案

我的建议是使用推断元组类型的辅助函数:

const tuple = <T extends any[]>(...t: T) => t;

const initialErrState = {
    a: tuple(false, ''),
    b: false,
    c: false,
    d: false,
};
/* const initialErrState: {
    a: [boolean, string];
    b: boolean;
    c: boolean;
    d: boolean;
} */

Playground link to code

关于typescript - 你好,知道如何自动推断元组吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73113659/

相关文章:

typescript - Palantir Foundry 功能 - 累计收入分析

javascript - "Character"是 Typescript 中的关键字还是保留方法?

javascript - typescript 装饰器困惑

Typescript 基于泛型修改类型

angular - 如何解决这个依赖问题

reactjs - TypeScript:如何将类型信息从父级传递给子级?

typescript - tsc --watch 在 tsconfig.json 中存在 outDir 时不更新文件

mime-types - TypeScript 的 MIME 类型是什么?

javascript - 如何在 Angular 6 和 TypeScript 中使用 Highcharts Solid Gauge?

angular - TS2345 : Argument of type 'string' is not assignable to parameter of type 'never'