diff --git a/src/components/Form/src/components/FormItem.vue b/src/components/Form/src/components/FormItem.vue index d4a6073c..0a778dbd 100644 --- a/src/components/Form/src/components/FormItem.vue +++ b/src/components/Form/src/components/FormItem.vue @@ -360,6 +360,11 @@ function renderItem() { const { itemProps, slot, render, field, suffix, component } = props.schema; + // 不可编辑时,必填项不设置 + let useItemProps = {...itemProps} + if(useItemProps.required){ + useItemProps.required = useItemProps.required && !unref(getDisable) + } const { labelCol, wrapperCol } = unref(itemLabelWidthProp); const { colon } = props.formProps; const opts = { disabled: unref(getDisable), readonly: unref(getReadonly) }; @@ -406,7 +411,7 @@ name={field} colon={colon} class={{ 'suffix-item': showSuffix }} - {...(itemProps as Recordable)} + {...(useItemProps as Recordable)} label={renderLabelHelpMessage()} rules={handleRules()} labelCol={labelCol}