当表单提供有效的输入数据时,为啥我的表单按钮没有打开? (包括代码沙箱)
Posted
技术标签:
【中文标题】当表单提供有效的输入数据时,为啥我的表单按钮没有打开? (包括代码沙箱)【英文标题】:Why isn't my form's button turning on when the form is supplied valid input data? (Includes code sandbox)当表单提供有效的输入数据时,为什么我的表单按钮没有打开? (包括代码沙箱) 【发布时间】:2022-01-05 10:27:18 【问题描述】:我正在使用 Material UI 的 Autocomplete multiple TextField、React Hook Form 和 Yup 来验证表单输入。
以下表单要求用户输入星期几。如果他们输入“每天”,其他选项将被禁用/如果用户输入任何一天,“每天”选项将被禁用。
在我的表单上,我已设置为如果表单输入无效,提交按钮将保持禁用状态。我正在尝试使用以下 Yup 验证模式来执行此操作,但它不起作用...
const validationSchema = Yup.object().shape(
daysOfWeek: Yup.array()
.of(
Yup.object().shape(
label: Yup.string(),
disabled: Yup.boolean(),
)
)
.min(1, "Days of the week are required")
);
您能否检查一下我的代码沙箱,看看可能出了什么问题?提前非常感谢!
https://codesandbox.io/s/mystifying-cookies-n5iyl
【问题讨论】:
【参考方案1】:我终于弄明白了!
更新的代码沙箱:https://codesandbox.io/s/mystifying-cookies-n5iyl?file=/src/App.js
【讨论】:
您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center。以上是关于当表单提供有效的输入数据时,为啥我的表单按钮没有打开? (包括代码沙箱)的主要内容,如果未能解决你的问题,请参考以下文章