首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Typescript:如何从字符串数组定义类型?

Typescript:如何从字符串数组定义类型?
EN

Stack Overflow用户
提问于 2020-08-22 17:45:20
回答 1查看 37关注 0票数 1

目前我这样做:

代码语言:javascript
复制
export const CValidEbookTypes = ['epub', 'mobi', 'pdf', 'azw3', 'txt', 'rtf'];
export type IEbookType = 'epub' | 'mobi' | 'pdf' | 'azw3' | 'txt' | 'rtf';

拥有一个有效书籍类型的数组和一个typescript类型,它定义了它们。这看起来非常多余。

有没有办法使用数组来定义类型?我的目标显然是避免两次编写图书类型。因此,任何其他解决方案也将受到欢迎。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-08-22 17:55:19

通过使用as const,typescript将字符串文字推断为CValidEbookTypes的类型。然后,您可以使用typeof CValidEbookTypes[number]

代码语言:javascript
复制
export const CValidEbookTypes = ['epub', 'mobi', 'pdf', 'azw3', 'txt', 'rtf'] as const;
export type IEbookType = typeof CValidEbookTypes[number];
// IEbookType will be "epub" | "mobi" | "pdf" | "azw3" | "txt" | "rtf"
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63534787

复制
相关文章

相似问题

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