Cri*_*scu 4 javascript validation reactjs yup
我得到了以下代码:
name: yup
.string()
.trim()
.required(message("nameMissing"))
.max(40, message("nameTooLongWithStatus", {
length: (HERE I NEED HELP),
})),
Run Code Online (Sandbox Code Playgroud)
请参阅我写的“我需要帮助”的行。我希望它是这样的: name.toString().length
但这显然行不通,实际上我尝试过的任何方法都行不通。我只是想获取“名称”的值并获取它的长度,仅此而已。
所以我们的想法是,“name”应该是一个最多 40 个字符的字符串。如果超过 40,将显示一条消息“最大字符数为 40(当前长度)”,其中当前长度是您作为输入提供的名称。
message("nameTooLongWithStatus"将接受参数“长度”并构造所述消息。
如果您提供一个函数作为 的第二个参数,您将获得这些字段max()。
path,value,originalValue,label,max
name: Yup.string()
.trim()
.max(5, (obj) => {
const valueLength = obj.value.length;
return `Name (length: ${valueLength}) cannot be more than ${obj.max}`;
})
.required('Required')
Run Code Online (Sandbox Code Playgroud)