<script>
<Form name="basic" ref={formRef} onFinish={onFinish}>
<Form.Item
label='校验'
name="check"
rules={[
// 校验必填
{
required: true,
message: '请输入!'
},
// 校验输入字符数限制
{
validator: (_, value) =>
value && value.length > 500
? Promise.reject(new Error('输入内容不能超过500个字符!'))
: Promise.resolve(),
},
// 校验输入的不能为负数
{
validator: (_, value) =>
value && value < 0
? Promise.reject(new Error('输入内容不能为负数!'))
: Promise.resolve(),
},
// 校验手机号
{
pattern: /^1\d{10}$/,
message: '手机号格式错误!',
},
// 校验密码
{
validator: (_, value) =>
value && !/^(?=.*[a-zA-Z])(?=.*\d)(?=.*[\W_]).{8,}$/.test(value)
? Promise.reject(
new Error('密码必须包含至少8个字符,一个字母,一个数字和一个特殊符号!')
)
: Promise.resolve()
},
// 校验两次输入的密码是否一致
{
validator: (_, value) =>
value && value !== formRef.current?.getFieldValue('newPassword')
? Promise.reject(new Error('两次输入的密码不一致!'))
: Promise.resolve(),
}
]}
>
<Input />
</Form.Item>
</Form>
</script>
注:本人前端小白 ,如有不对的地方还请多多指教