首页 > 解决方案 > 是的:投射失败后如何获得错误信息?

问题描述

我正在使用yup验证,并且我想尝试这种惊人的转换方法,但是从文档中不清楚,我如何在失败的情况下获得错误消息?cast要么转换并验证并返回结果,要么返回null,仅此而已。这是不可接受的 - 我还需要一条错误消息。同时我不想运行它两次,比如 - 一次用于验证,一次用于强制转换。

标签: javascriptvalidationcastingjoiyup

解决方案


强制转换并验证并返回结果或返回 null 就是这样

cast 没有 validate结果 - 它只是改变它。validate(Sync)/isValid(Sync)强制转换然后验证。

如果您想在强制转换失败的情况下在特定模式上提供错误消息,您可以使用typeError

同时我不想运行它两次,比如 - 一次用于验证,一次用于强制转换。

正如我所说,验证方法总是在验证之前先运行转换(如果转换失败,那么它不会运行验证)。如果您想要强制转换和验证功能,那么您只需调用验证方法并返回cast结果(如果有效) - 您不需要调用cast,除非您只想强制转换(不验证)。


推荐阅读