我正在尝试弄清楚如何将自定义验证消息添加到我的表单
我的代码看起来像这样
<Form noValidate validated={ validated } onSubmit={ onSubmit } style={ { 'width': '90%' } }>
<Form.Group className="mb-3" controlId="company">
<Form.Label>Company</Form.Label>
<Form.Control type="company"
name="company"
placeholder="Enter company name"
// required
minLength={5}
value={ fields.company }
onChange={ onFieldChange }
/>
<Form.Control.Feedback type="invalid">
Please enter the company name.
</Form.Control.Feedback>
</Form.Group>
</Form>
请注意Please enter the company name
,如果有任何验证错误,我会发出一条通用消息。但是,如果该字段为空白而不是用户输入内容但不够长,因为最小长度为 5,我希望得到不同的消息。
我还有另一种情况,用户输入他的电子邮件两次,我比较以确保它们是相同的。
我已经阅读过,setCustomValidity
但我不知道如何获取它存储的消息。我尝试了一些我在网上找到的东西。理想情况下,我希望能够有这样的逻辑:
<Form.Control.Feedback type="invalid">
if (missing) Please enter the company name.
if (tooshort) Name must be at least 5 characters
</Form.Control.Feedback>
或者像这样
<Form.Control.Feedback type="missing">
Please enter the company name.
</Form.Control.Feedback>
<Form.Control.Feedback type="tooshort">
Name must be at least 5 characters
</Form.Control.Feedback>
如何使错误消息更加动态?