我使用formik作为表单实现。当您在上面的行中添加数据时,我们需要追加一个新的字段行。在提交表单时,我们将得到yup验证错误,因为新添加的行不符合条件。请建议跳过新添加的行(最后一行)的验证的解决方案。
This is the validation schema
Yup.object().shape({
key1: Yup.object({
key2: Yup.object({
key3: Yup
.array()
.of(Yup.object().shape
你好斯塔克沃夫家族,
我有一个与Yup相关的问题,我有一个选择的输入字段,它在它的第四个条目上有4个条目,它又添加了两个输入字段。如果用户从select输入字段中选择第四项,则可以对两个输入字段应用验证,否则只需提交表单即可。
const YupSchema = Yup.object().shape({
workspace_name: Yup.string().trim()
.required('Organization Name can not be Empty'),
workspace_environment: Yup.string().trim()
.re
我得到了一个与我的怀疑高度相关的简单例子,所以我用这个作为我的例子。在这个链接中,我们可以看到一个简单的Yup验证模式。因此,当我们在电子邮件字段中输入某些内容时,电子邮件验证中的控制台日志将被打印出来,这显然是很好的。但是,即使我们在name字段中键入某些内容,控制台也会被打印出来。
验证模式
const schema = yup.object({
name: yup.string().required(),
email: yup.string().test('is-jimmy', '${path} is not Jimmy', function (v
下面是代码:
{
label: "Name",
name: "name",
placeholder: 'Name',
type: "text",
rule: yup.string()
.required('Name is a required field')
.matches(/^[a-zA-Z0-9]+$/, '* This field cannot contain white space and special char
Yup异步验证测试被多次调用。是否有任何方法只在值发生更改时才调用test或阻止对同一值进行验证检查?
const validationSchema = yup.object().shape({
zipCode: yup.string().required()
.test('invalidZip', 'ZipCode must be valid', (value, context) => {
/**
* api call to validate zip code
我在表单验证中使用react-hook-form和yup,并希望某些字段是可选的(null)。
在他们的文档之后,我使用了和,但仍然在验证:
export const updateAddressSchema = yup.object({
address: yup
.string()
.nullable()
.optional()
.min(5, "Address must be more than 5 characters long")
.max(255, "Address must be less than 255 char
在密码字段中,如果我给“密码@ 345”它的接受和正确,但如果我给“密码@345”,它也接受,但它不应该接受,因为条件是没有空白,如何删除空格,如果我键入密码与空格,它应该会出现错误。
import React from "react";
import { Formik, Form, Field } from 'formik';
import * as Yup from 'yup';
export default function DropDown() {
const SignupSchema = Yup.object().shape({
是否可以使用Yup对一个验证对象有两个不同的最大条件?所以目前我有这样的代码:
yup.array().of(yup.object().shape({
dateToCheck: yup
.date()
.min(minDatetoCheck, 'Cant be below this date')
.max(maxDatetoCheck, 'Cant be a
所以我在使用yup进行条件验证时遇到了问题。基本上,我希望运输有必要的属性时,复选框未被切换。我正在使用yup的when特性,但是我不知道如何从那个shipping嵌套对象中引用sameShippingAsBilling布尔值。 当checkbox为false时,一切正常,显示错误...但是当复选框被选中时,我得到这个错误:"Cannot use 'in' operator to search for 'default' in undefined" 问题是is回调中的值是未定义的。是否有可能从这些嵌套对象访问when中的外部变量?有什么替代方法
我正在使用Yup和Formik进行一个react表单验证。表单中有一个需要验证的react-select元素。对于验证,我使用validationSchema of Formik来验证表单的值变化。我只需要作为字符串的select字段的值,所以不能接受完整的对象(键值)。select字段工作正常,无论验证错误消息是否被清除。问题是如何使用现有方法验证select字段?
下面是最小的代码示例。
import ReactDOM from "react-dom";
import React, { useState } from "react";
import { Gr
我正在尝试使用Formik和Yup实现登录功能。这是我当前的架构
let loginSchema = yup.object().shape({loginId:
yup
.string()
.email("That doesn't look like a valid email")
.required("This field is required."),password: yup.string().required("This field is required."),});
但我的loginId既可以是电话号码,也可以是电子
我发现当有一个min/max值时,yup会忽略nullable字段。
myValue: string().nullable().min(10, "This value must be minimum of 10 characters.")`.
有一个是关闭回购没有任何解决方案。
这是预期的行为吗?如果是的话,有什么解决办法吗?我可以在不使用yup的情况下检查值的长度并引发错误,但是,我希望将其全部保存在yup模式验证中。