有许多方案,它们是由一些相同的领域结合起来的。当更改一个方案的字段时,您需要更改相同的字段,但在其他方案中。我希望不同方案的领域,或者方案本身,能够引用或继承一个共同的方案。类似于:
import * as Yup from "yup";
import {commonSchema} from "./common";
export const parentSchema = Yup.object().shape({
FirstName: Yup.string()
.min(2, `Имя не может сос
我想检查标题中的文本字段是否已被填充,我也希望将文本框的限制设置为300个字符。如果我独立地尝试这些条件中的任何一种,它们就会工作。然而,如果我同时尝试这两种方法,那么字符限制验证就会被执行,而不是另一种。
const validationSchema = Yup.object().shape({
title: Yup.string().required().label("Title"),
title: Yup.string().test('len', 'Title must be less than 300 characters
我使用Yup对Formik进行验证模式。表单字段名包含句点(.)特别的角色。它需要包含这个特殊的字符,因为这个名称是由操作引用的。字段名类似于"traits.name.first“。我将验证模式定义为
yup.object().shape({
"traits.name.first": yup.string().required("Please enter the first name"))};
但这种验证是行不通的。这是支持和有效的Yup使用字段名作为"traits.name.first"?请让我知道如何使它工作。目前,此验证不起作用,而
所以我在使用yup进行条件验证时遇到了问题。基本上,我希望运输有必要的属性时,复选框未被切换。我正在使用yup的when特性,但是我不知道如何从那个shipping嵌套对象中引用sameShippingAsBilling布尔值。 当checkbox为false时,一切正常,显示错误...但是当复选框被选中时,我得到这个错误:"Cannot use 'in' operator to search for 'default' in undefined" 问题是is回调中的值是未定义的。是否有可能从这些嵌套对象访问when中的外部变量?有什么替代方法
我使用formik作为表单实现。当您在上面的行中添加数据时,我们需要追加一个新的字段行。在提交表单时,我们将得到yup验证错误,因为新添加的行不符合条件。请建议跳过新添加的行(最后一行)的验证的解决方案。
This is the validation schema
Yup.object().shape({
key1: Yup.object({
key2: Yup.object({
key3: Yup
.array()
.of(Yup.object().shape