我在 typescript 中有这样的类型,字符串必须以A
字母开头。
type StringStartsWithA = `A${string}`
当我想创建一个zod模式时,我使用的是:
const StringStartsWithASchema = z.string().startsWith("A")
但是,推断的类型只是一个普通的字符串。
type StringStartsWithA = z.infer<typeof Schema> // string
有没有办法解决这个问题,所以推断出的类型也要求以A
字母开头?这样它就会匹配原始的 typescript 类型?
1条答案
按热度按时间eqqqjvef1#
从文件上看
您可以使用z. custom()为任何TypeScript类型创建Zod模式,这对于为Zod不支持的现成类型(如模板字符串常量)创建模式非常有用。
因此,对于您的情况: