可以使用正则表达式来验证字符串。这很容易。
const myString = z.string().regex(/A string/);
Run Code Online (Sandbox Code Playgroud)
但其他数据类型呢?
我猜想以下内容可能适用于数字,但它似乎不惯用。
const myNumber = z.number().gte(7).lte(7);
Run Code Online (Sandbox Code Playgroud)
有没有更好的办法?
您可以使用Zod Literals来匹配精确值。推断类型也将完全是指定的值而不是number。
例如:
const myNumber = z.literal(7);
Run Code Online (Sandbox Code Playgroud)