【发布时间】:2021-03-30 15:24:34
【问题描述】:
我正在尝试做与自 TypeScript 4.1 发布以来许多其他开发人员可能一直在尝试的完全相同的事情:严格键入具有预定模式的所有字符串。
虽然我设法为日期字符串找到了一个不错的折衷方案,但我现在面临着十六进制颜色代码的挑战。
显然尝试 HEX = 0 | 的天真方式1 | ... | "E" | "F" 然后声明
type HEX_CODE = `#${HEX}${HEX}${HEX}${HEX}${HEX}${HEX}`;
通过联合太多类型使类型过于复杂。
很公平。
所以我想我会尝试至少在十六进制代码前添加 # 的要求,这意味着我会满足于:
type HEX_CODE = `#${arbitraryString}`;
但是我想不出办法让它工作。有谁知道如何使这项工作发挥作用,或者对类型进行另一种(也许更好)妥协?
【问题讨论】:
标签: typescript template-literals