[英]How do I provide a callback when Form.Item has been validated in antd?
我的 Input 當前位於<Form>
和Form.Item
中。
我只想在驗證成功時觸發回調,所以回調不會運行驗證失敗。
有沒有辦法做到這一點?
<Form.Item
hasFeedback
name="url"
rules={[
{
required: true,
min: 5,
type: "url",
whitespace: true,
},
]}
onChange={console.log}
>
<Input
name="url"
onChange={(event) => {
props.onChange(event);
setValue(event.target.value);
}}
/>
</Form.Item>
參考:
您可以通過將Form
組件的onValuesChange
事件處理程序與useRef
和form.validateFields
實例方法結合使用來實現此行為。 useRef
用於跟蹤url
字段之前的驗證狀態。
回調,如以下示例中當前設置的那樣,僅當字段從錯誤驗證 state 轉換為成功驗證 state 時才會啟動(我假設這是您想要的行為)。
https://codesandbox.io/s/antd-launchcallbackonvalidatesuccess-pehue
快樂編碼!
PS 如果url
Form.Item
組件也可以訪問form
實例,那么您也應該能夠使用Input
組件的onChange
處理程序啟動相同的邏輯。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.