Skip to content

Commit 301a07c

Browse files
authored
fix(form): 兼容校验时机 (#2437)
* fix(formItem): validateTrigger无法正确触发校验 * fix(form): 修复 * fix(form): 修复 * fix: merge
1 parent 0c07b7b commit 301a07c

File tree

4 files changed

+6
-4
lines changed

4 files changed

+6
-4
lines changed

src/packages/form/useform.taro.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ class FormStore {
9191
* 存储组件数据
9292
* @param newStore { [name]: newValue }
9393
*/
94-
setFieldsValue = (newStore: any) => {
94+
setFieldsValue = (newStore: any, needValidate = true) => {
9595
this.store = {
9696
...this.store,
9797
...newStore,
@@ -113,6 +113,7 @@ class FormStore {
113113
item.entity.onStoreChange('update')
114114
}
115115
})
116+
needValidate && this.validateFields()
116117
}
117118

118119
setCallback = (callback: Callbacks) => {

src/packages/form/useform.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ class FormStore {
9191
* 存储组件数据
9292
* @param newStore { [name]: newValue }
9393
*/
94-
setFieldsValue = (newStore: any) => {
94+
setFieldsValue = (newStore: any, needValidate = true) => {
9595
this.store = {
9696
...this.store,
9797
...newStore,
@@ -113,6 +113,7 @@ class FormStore {
113113
item.entity.onStoreChange('update')
114114
}
115115
})
116+
needValidate && this.validateFields()
116117
}
117118

118119
setCallback = (callback: Callbacks) => {

src/packages/formitem/formitem.taro.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ export class FormItem extends React.Component<
128128
if (this.props.getValueFromEvent) {
129129
next = this.props.getValueFromEvent(...args)
130130
}
131-
setFieldsValue({ [name]: next })
131+
setFieldsValue({ [name]: next }, false)
132132
},
133133
}
134134
const { validateTrigger } = this.props

src/packages/formitem/formitem.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,7 @@ export class FormItem extends React.Component<
127127
if (this.props.getValueFromEvent) {
128128
next = this.props.getValueFromEvent(...args)
129129
}
130-
setFieldsValue({ [name]: next })
130+
setFieldsValue({ [name]: next }, false)
131131
},
132132
}
133133
const { validateTrigger } = this.props

0 commit comments

Comments
 (0)