首页 > 解决方案 > 自定义 Yup 验证方法不起作用

问题描述

我尝试添加一种自定义 Yup 验证方法来检查字符串是否包含大写字母 by addMethod(),但它一直在抛出错误。当将此表单添加到架构中时,表单甚至不会执行任何其他验证。这是我写的验证方法:

Yup.addMethod(Yup.string, "capitalcheck", function (message) {
    return this.test('test-capitalcheck', message, function (value) {
        const { path, createError } = this;
        return (value.toLowerCase() != value) || createError({ path, message: message })
    });
});

这是表单架构:

password: Yup.string()
        .required("*Field can not be empty")
        .min(8, "*Field can not be less than 8 characters!")
        .capitalcheck("Must include capital character!"),

标签: reactjsvalidationformikyup

解决方案


推荐阅读