Zod 3.21.0 发布,TypeScript 静态类型校验库
TypeScript 静态类型校验库 Zod 现已发布 3.21.0 版本。
Zod 是一个以 TypeScript 为首的模式声明和验证库,其目的是消除重复的类型声明,适用于在框架层辅助建立全链路的类型安全。使用 Zod,开发者只需声明一次验证器,Zod 就会自动推断出静态 TypeScript 类型。
新版本带来如下新内容:
z.string().emoji()
#2045 现在可以验证字符串中的所有字符是否是表情字符。
z.string().emoji()
z.string().ip()
#2066 默认情况下,允许 v4 和 v6 IP地址。
const v4IP = "122.122.122.122"; const v6IP = "6097:adfa:6f0b:220d:db08:5021:6191:7990"; const ipSchema = z.string().ip(); ipSchema.parse(v4IP) // pass ipSchema.parse(v6IP) // pass
指定一个特定的version
:
const ipv4Schema = z.string().ip({ version: "v4" }); const ipv6Schema = z.string().ip({ version: "v6" });
z.bigint().{gt|gte|lt|lte}()
ZodBigInt
获取与 ZodNumber
相同的方法集
z.bigint().gt(BigInt(5)); z.bigint().gte(BigInt(5)); z.bigint().lt(BigInt(5)); z.bigint().lte(BigInt(5)); z.bigint().positive(); z.bigint().negative(); z.bigint().nonnegative(); z.bigint().nonpositive(); z.bigint().multipleOf(BigInt(5));
ZodError
捕获中的访问
#2087 访问 .catch()
方法中抛出的错误。
const numberWithErrorCatch = z.number().catch((e) => { console.error(e); // ZodError return 42; });
错误修复
Zod 3.20.2 引入了一种意外的类型投递,导致某些用户的编译时间过长 。这些类型的错误很难诊断, Zod 3.21 #2107解决了这些问题:
- #2142
- #1741
- https://stackoverflow.com/questions/74881472/slow-typescript-autocompletion-in-vs-code-for-zod
更新公告:https://github.com/colinhacks/zod/releases/tag/v3.21.0

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
IntelliJ IDEA 2023.1 Beta 已发布
IntelliJ IDEA 2023.1 Beta 现已推出!Beta 版提供了即将发布的 2023.1主要版本中预期的所有新功能和改进。 新功能一览: 新 UI 的多项增强功能。 完整的 IDE 缩放。 新的编辑器设置。 结构工具窗口中的 VCS 状态颜色提示。 改进了 GitHub 的代码审查工作流程。 使用 Markdown 文件的改进。 在智能模式下扫描文件以建立索引。 自定义基于正则表达式的搜索和替换检查。 Gradle 的改进。 更快的 Maven 项目导入。 新的 Java 检查。 改进的 IntelliJ IDEA 分析器。 Spring Security 匹配器的导航。 Spring Security 6.0 支持。 OpenAPI 规范的编辑改进。 能够从 Spring 和 Micronaut 数据存储库在数据库控制台中运行 MongoDB 查询。 Kubernetes 和 Docker 更新。 Beta 1 版本新功能: 改进的提取方法重构 升级了Extract Method重构,引入了应用它的选项,即使选定的代码片段具有多个需要返回的变量。在这些情况下,IDE ...
- 下一篇
Spring Boot 3.0.4 发布
Spring Boot 3.0.4已发布。此版本包括 19 项错误修复、文档改进和依赖项升级。具体更新内容包括: Bugfix Maven 插件在使用 outputTimestamp 时使用时区本地时间戳#34430 org.springframework.boot.web.embedded.jetty.GracefulShutdown 使用错误的类来创建其记录器#34419 带有初始化嵌套记录属性值的@ConfigurationProperties不再绑定#34407 与 spring-boot-devtools 结合使用时,自定义 ConfigDataLocationResolver/ConfigDataLoader 在 3.0.x 中失败#34372 defaultTracingObservationHandler 未按记录排序#34216 Spring Boot 3 不提供用于配置 red metrics custom tag key 的配置属性#34194 文档 对 Gradle 8 的文档支持#34462 更新批处理文档#34437 添加指向故障转移启动器的链接#34422...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- CentOS8编译安装MySQL8.0.19
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- SpringBoot2整合Redis,开启缓存,提高访问速度
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Docker使用Oracle官方镜像安装(12C,18C,19C)