gpt4 book ai didi

typescript - 动态基于其他类型的新类型

转载 作者:行者123 更新时间:2023-12-05 01:24:09 25 4
gpt4 key购买 nike

我想根据另一个类型或只读数组动态创建一个类型。示例:

const lines = ['one', 'two', 'three'] as const;
const linesWithA = lines.map(line => `${line}-A`);

现在我需要一种方法来获得 linesWithA 的类型。例如,它可以是联合类型 'one-A' | '二-A' | 'three-A',但需要动态生成。因此,当我将手动添加一个元素到 lines 时,我不必记得将其更改为 linesWithA 类型。

这可能吗?

最佳答案

是的,这是可能的:

type lines = 'one' | 'two' | 'three'
type linesWithA = `${lines}-A`

TypeScript 的这个特性叫做 Template Literal Types , 它是在版本 4.1 中引入的.

您可以在 TS Playground here

关于typescript - 动态基于其他类型的新类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71617555/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com