diff --git a/src/renderers/Form/Control.tsx b/src/renderers/Form/Control.tsx index ffcaea7db..febd9289d 100644 --- a/src/renderers/Form/Control.tsx +++ b/src/renderers/Form/Control.tsx @@ -9,7 +9,8 @@ import { } from '../../factory'; import { ComboStore, - IComboStore + IComboStore, + IUniqueGroup } from '../../store/combo'; import { anyChanged, @@ -302,11 +303,15 @@ export default class FormControl extends React.Component } = this.props; if (this.model) { - this.model.validate(this.hook); - - // 可能出现同名的表单项 - form.getItemsByName(this.model.name) - .forEach(item => item !== this.model && item.validate()) + if (form.parentStore && form.parentStore.storeType === 'ComboStore') { + const combo = form.parentStore as IComboStore; + const group = combo.uniques.get(this.model.name) as IUniqueGroup; + group.items.forEach(item => item.validate()); + } else { + this.model.validate(this.hook); + form.getItemsByName(this.model.name) + .forEach(item => item !== this.model && item.validate()) + } } }