我和形式由多頁的工作,我要解決的驗證。終極版形式 - 如何設置字段感動
當我打提交按鈕的所有字段本網頁上顯示的錯誤消息下方,但如果我更改頁面,然後我需要打因爲觸及這些領域並沒有設置再次提交。如果我能,例如設置爲感動,一旦表單標誌anyTouched: true
網頁上的所有字段
我的問題將得到解決。
我使用redux-form: '^6.0.0-rc.4'
和我有一個容器,其中我包括Redux的形式和由字段的多個組件。
我和形式由多頁的工作,我要解決的驗證。終極版形式 - 如何設置字段感動
當我打提交按鈕的所有字段本網頁上顯示的錯誤消息下方,但如果我更改頁面,然後我需要打因爲觸及這些領域並沒有設置再次提交。如果我能,例如設置爲感動,一旦表單標誌anyTouched: true
網頁上的所有字段
我的問題將得到解決。
我使用redux-form: '^6.0.0-rc.4'
和我有一個容器,其中我包括Redux的形式和由字段的多個組件。
我應該更好看:
Redux的形式返回touch當做道具的組件。該函數的參數字段的名字,所以我在componentWillUpdate
檢查時submitFailed
將改變,然後我會觸摸無效的所有領域。
componentWillUpdate(nextProps) {
const {
formName: { syncErrors },
submitFailed,
touch
} = this.props
if (submitFailed !== nextProps.submitFailed) {
const toTouch = []
for (const key in syncErrors) {
syncErrors.hasOwnProperty(key) && toTouch.push(key)
}
touch(...toTouch)
}
}
我認爲你的問題是圍繞相反的方式,但在任何情況下,這裏的土地和我一樣在尋找一種方式有anyTouched
集形式的任何領域被觸摸後...
在終極版型V6你必須明確地選擇要與表單級配置touchOnChange
和touchOnBlur
行爲 - see the docs here - 默認情況下沒有任何配置,因此沒有任何反應。
const Form = reduxForm({
form: 'my-form',
touchOnChange: true,
touchOnBlur: true
})(...)
這些標誌讓這個任何字段被標記爲感動(因此anyTouched
表格上標明true
)時,該字段的onChange
或onBlur
處理器被分別稱爲。