fix: filter invalid form items #4435
							parent
							
								
									5409ce545c
								
							
						
					
					
						commit
						5bdd6f4007
					
				|  | @ -1,4 +1,4 @@ | ||||||
| import type { PropType, ExtractPropTypes, ComputedRef } from 'vue'; | import { PropType, ExtractPropTypes, ComputedRef, watch } from 'vue'; | ||||||
| import { defineComponent, computed, nextTick, ref, watchEffect, onBeforeUnmount } from 'vue'; | import { defineComponent, computed, nextTick, ref, watchEffect, onBeforeUnmount } from 'vue'; | ||||||
| import cloneDeep from 'lodash-es/cloneDeep'; | import cloneDeep from 'lodash-es/cloneDeep'; | ||||||
| import PropTypes from '../_util/vue-types'; | import PropTypes from '../_util/vue-types'; | ||||||
|  | @ -271,16 +271,31 @@ export default defineComponent({ | ||||||
|       clearValidate, |       clearValidate, | ||||||
|       resetField, |       resetField, | ||||||
|     }); |     }); | ||||||
|     formContext.addField(eventKey, { |     let registered = false; | ||||||
|       fieldValue, |     watch( | ||||||
|       fieldId, |  | ||||||
|       fieldName, |       fieldName, | ||||||
|       resetField, |       val => { | ||||||
|       clearValidate, |         if (val) { | ||||||
|       namePath, |           if (!registered) { | ||||||
|       validateRules, |             registered = true; | ||||||
|       rules: rulesRef, |             formContext.addField(eventKey, { | ||||||
|     }); |               fieldValue, | ||||||
|  |               fieldId, | ||||||
|  |               fieldName, | ||||||
|  |               resetField, | ||||||
|  |               clearValidate, | ||||||
|  |               namePath, | ||||||
|  |               validateRules, | ||||||
|  |               rules: rulesRef, | ||||||
|  |             }); | ||||||
|  |           } | ||||||
|  |         } else { | ||||||
|  |           registered = false; | ||||||
|  |           formContext.removeField(eventKey); | ||||||
|  |         } | ||||||
|  |       }, | ||||||
|  |       { immediate: true }, | ||||||
|  |     ); | ||||||
|     onBeforeUnmount(() => { |     onBeforeUnmount(() => { | ||||||
|       formContext.removeField(eventKey); |       formContext.removeField(eventKey); | ||||||
|     }); |     }); | ||||||
|  |  | ||||||
							
								
								
									
										2
									
								
								v2-doc
								
								
								
								
							
							
								
								
								
								
								
								
							
						
						
									
										2
									
								
								v2-doc
								
								
								
								
							|  | @ -1 +1 @@ | ||||||
| Subproject commit fc73e64bcdf41be854c2f7a907c05b056ad652ab | Subproject commit e67d63729715291f481029fe9497f0109f328504 | ||||||
		Loading…
	
		Reference in New Issue
	
	 tangjinzhou
						tangjinzhou