问题标签 [yup]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2501 浏览

reactjs - «一个组件正在更改要控制的复选框类型的不受控制的输入。» Formik 复选框的警告

我尝试将formik与自动生成的表单一起使用。但是当有复选框时,我会收到警告:

警告:组件正在更改要控制的复选框类型的不受控制的输入。输入元素不应从不受控切换到受控(反之亦然)。

触摸它们时。对于其他字段,可以用formmilk组件的初始值来解决。但是复选框不应该有初始值。如何修复?

0 投票
2 回答
6880 浏览

javascript - 如果字段不为空,请勿在提交时验证 Formik 和 Yup 中未触及的字段

我有一个withFormik()用于我的 React 应用程序中使用的表单的验证模式,这validateJql()是我的自定义验证函数yup

我的表单组件是这样的:

现在,我想要做的不是在表单提交时运行验证,如果该字段没有被触摸rework并且originalEstimate也不是空的。如何使用withFormikHOC 或Yup? 我已经部分浏览了Yup文档和Formik文档,但找不到适合我的问题的东西。

在提交一次表单并在此之后进行编辑以对其中一些字段进行细微调整后就是这种情况。如果有多个字段并且只编辑了一些字段,我不想对所有存在的字段进行验证。

先感谢您。

0 投票
1 回答
2577 浏览

javascript - Firebase:电子邮件格式错误

我正在使用 react-native、formik 表单、是的验证和 firebase 身份验证。但是,当我尝试登录时,我不断收到此错误:

createUser 错误:[错误:电子邮件地址格式错误。]

这是我的代码:Firebase API:

}

登录屏幕:

形式:

这是记录值后的结果:

记录实际值不会给出任何结果,所以我选择检查字符串是否为空,并且看起来它们是空的。但是,当我删除 formik 表单并使用没有验证的常规输入字段时,一切正常。

0 投票
1 回答
477 浏览

javascript - 如何使用 React/Redux/Formik 和 Yup 构建我的高阶组件?

我有 2 个不同的视图。它们都使用相同的形式。表单存在于模态中。该表单在第一个视图(创建模式)中完美运行。

现在我想为(Edit Mode)添加另一个。唯一的区别是编辑模式需要实际项目的值(在我们的例子中是用户)

一般来说,我了解高阶组件的工作原理。但我目前的配置Redux, Formik and Yup分别用于获取数据、表单处理和验证。

我在网上尝试了一些示例,但没有一个适合我的情况。这就是问题所在。我应该将多少功能转移到高阶组件?

功能一:实际形式应该存在的地方。组件,还是 HOC?Code Below:

我应该在 HOC 中移动它吗?因为它是完全相同的形式。如果是,为什么?

功能 2:我正在使用 Yup 进行表单验证。我已将此功能移至 HOC,但现在,我无法将 ValidatioSchema 传递给表单组件。Code Below

功能3:如何处理Modal。模态有点棘手。我决定在每个单独的屏幕中单独使用它。这是正确的还是我应该将它包含在 HOC 中?

我的 HOC:

这是我的表单组件:

我知道这是很多代码需要通过。但我不知所措。真的不知道我应该在哪里包括什么。

对我来说,我需要 form(Formik) 和 Yup,以及 HOC 上的 Redux。然后根据视图添加数据。请我真的需要一些指导和一些例子。谢谢你。

0 投票
0 回答
30 浏览

reactjs - 错误消息“shap 不是函数” - 我该怎么办?

我收到一条错误消息,我不知道如何摆脱:

是的__WEBPACK_IMPORTED_MODULE_12__.object(...).shap 不是函数

0 投票
1 回答
3499 浏览

reactjs - 是的,填写的字段之一

我的问题是,如果其中一个字段存在,我如何使用 Yup 进行验证?

0 投票
1 回答
1004 浏览

regex - 如何验证 Yup 中的非必需文件

如何验证不应包含以下特殊字符 #<`>和点(。)之前的空格的非必需文件我有正则表达式\`|\#|\&|\<|\ \.|\>来验证上述条件,但不知道如何使用 yup.matches() 来处理这个正则表达式。提前致谢

我的验证模式是:

0 投票
1 回答
2107 浏览

reactjs - 如何验证 yup 的非必需文件

我正在使用 yup 和 formik 进行验证。我想用是的来验证一个非必填字段。这里的 test 是一个非必填字段,但是当用户输入时,我们会阻止他输入一些特殊字符。当用户没有输入任何内容时,它也在验证(在用户输入内容之前我不需要此验证)。任何人都可以帮助我,提前谢谢

0 投票
1 回答
2848 浏览

reactjs - 从 Material UI Radio 返回布尔值以在 Yup .when 验证中使用

是的,允许使用基于另一个值的验证.when

例子:

valueMaterial UI 的 Radio 表单只允许在字段中使用字符串值。例子:

将值更改为:value={true}或字符串以外的任何值都会破坏 Radio 组件。在 yup 验证中强制使用无线电值yup.boolean没有帮助。

我的替代方案是切换到内联验证,这不是主意。

我正在尝试做的事情:如果isBig返回 true,则要求 count 是一个至少为 5 位的数字,否则忽略它。

我在这里想念什么?有没有办法通过 yup 有条件地验证相关值,然后使用 .when 以外的检查?或者,我是否在 Radio 组件中遗漏了一些明显的东西?

感谢任何帮助,Yup 在线示例不会超出 Yup 文档提供的示例。

0 投票
1 回答
6383 浏览

reactjs - 如何对yup中的单个值进行多次验证?

在服务器端使用 joi,我可以进行多个验证,例如 id: [joi.string().email(), joi.string().min(10)].

我们如何在前端使用 formik 和 yup 做到这一点?我浏览了文档,但仍然没有成功。