问题标签 [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.
reactjs - 如何使用 yup 和 formik 有条件地验证
我想使用 yup 验证两个字段,条件是需要任何人,我的意思是有用户名和电子邮件字段,但用户必须输入任何人,如何使用 yup 验证它
reactjs - 使用 Formik/Yup 的可选文件验证
如果选择了文件,我想验证文件输入,我找到了 Formik/Yup 的解决方案,但即使未选择文件,它也会验证。
当我输入其他输入时它会触发验证,我只想在文件存在时触发它,因为头像是可选的!
javascript - 是的:将字段本身与另一个字段进行比较
我有
但我需要这样的东西
但上面的代码不能正常工作。是否有可能以其他方式执行此验证?
validation - 如何使用 formik 和 yup 在 react-native 中进行验证?
如何使用 formik 和 yup 在此处显示错误消息?假设我想显示客户名称的错误消息。这个怎么做?
我也声明了 initialValues。请帮我。
这是我的错误信息。
这实际上是我的 API 注册部分。
我在这里添加了 formik 。我想在 setfieldtouch、onblur 和表单提交期间显示错误消息
javascript - 通过validationSchema,是的,是否可以执行更多验证?
目前,我正在结合使用 Yup 进行一些验证,例如最小长度、最大长度、必需等。我想知道在通过 Yup 验证后是否可以执行更多需要来自服务器端的请求和响应的验证?
例如,我需要先输入一个有效的电话号码格式,验证通过后,然后我想请求我的后端检查这个电话号码是否存在。如果它已经存在,那么只需设置errors.phone:“电话号码已注册。” 并在 ui 中使用{touched.phone && errors.phone && <p>{errors.phone}</p>}
. 请帮我照亮一些光。我找不到任何解决方案。
reactjs - Formik 表单没有在测试环境中使用 Yup 验证并开玩笑
我正在尝试测试当必填字段为空时是否引发验证。在我的示例中,我有一个电子邮件输入,我将其设置为空,并且当我模拟提交操作时,onSubmit 函数会在实际上不应该执行的情况下执行。我正在使用validationSchema 属性来验证我的表单。我已经console.log()
在我的提交函数中添加了它,它以调试模式显示(它不应该)。
这在开发环境中工作(提出验证,未执行 onSubmit 函数)但由于某种原因,它在测试环境中不起作用。
值得一提的是,我正在完全安装组件以使用 Enzyme 对其进行测试。
提前致谢。
我尝试.update
检查在模拟操作后是否至少更新了视图,但它仍然调用提交函数。
这是我的代码:
表单.js
测试.js
javascript - 在没有验证错误的情况下自动清理 Formik 中的值
Formik 建议使用 Yup 来验证数据,因此基本表单如下所示:
我需要的是一种在不显示验证错误的情况下清理数据的方法。
例如,数字字段可以是 1 到 10 之间的数字。如果用户输入 20 - 它应该自动更改为 10(不显示验证错误)。
有没有办法自定义 Yup 或 Formik 以便自动更新表单值?
reactjs - 使用 react-localize-redux-translations 作为 yup-required-string
我正在创建一个 React 应用程序,我想使用 react-localize-redux 进行翻译,并使用 yup 进行验证。我的问题是理解如何组合它们。
我知道我可以将字符串传递给yup-require或函数,因为这是签名:
当我只传递一个字符串时,这非常有效,但是我不明白如何在导入后传递我的 react-localize-redux 的翻译
模块,我习惯使用 JSX 组件,例如
然后返回我翻译的字符串。我完全不知道。。
我的代码:
reactjs - 使用 Formik 未成功触发 handleSubmit 函数
我正在使用 Formik + Yup 来构建一个表单,但似乎无法通过一个基本问题,我觉得我错过了一些明显的东西。我的 handleSubmit 函数不会在按钮单击时触发——即使是简单的控制台日志。如果我向 onClick 按钮处理程序添加一个纯函数,它会触发,但 Formik 似乎没有传递我用 withFormik HOC 构造的 handleSubmit。
我已经尝试将处理程序添加到 Form 组件,在那里也不起作用。
为简洁起见,我删除了除 firstName 属性之外的所有属性