优化FormItemsRenderer

master
LiuJiaNan 2025-10-30 16:42:59 +08:00
parent 959859e668
commit 431e3cbc37
1 changed files with 32 additions and 30 deletions

View File

@ -297,38 +297,40 @@ const FormItemsRenderer = ({
return ( return (
option.customizeRender option.customizeRender
? (renderFormControl(option)) ? (renderFormControl(option))
: ( : (() => {
<Col key={option.name || index} span={itemSpan} style={style}> // 支持动态计算 hidden
<Form.Item const hidden = typeof option.hidden === "function"
noStyle ? option.hidden(getFormValues())
shouldUpdate={option.shouldUpdate ?? option?.componentProps?.shouldUpdate} : (option.hidden ?? false);
dependencies={option.dependencies || option?.componentProps?.dependencies}
>
{() => {
// 支持动态计算 hidden
const hidden = typeof option.hidden === "function"
? option.hidden(getFormValues())
: (option.hidden ?? false);
if (hidden) if (hidden)
return null; return null;
return ( return (
<Form.Item <Col key={option.name || index} span={itemSpan} style={style}>
name={option.name} <Form.Item
label={renderLabel(option)} noStyle
rules={getRules(option)} shouldUpdate={option.shouldUpdate ?? option?.componentProps?.shouldUpdate}
labelCol={itemLabelCol} dependencies={option.dependencies || option?.componentProps?.dependencies}
wrapperCol={itemWrapperCol} >
{...getFormItemProps(option)} {() => {
> return (
{renderFormControl(option)} <Form.Item
</Form.Item> name={option.name}
); label={renderLabel(option)}
}} rules={getRules(option)}
</Form.Item> labelCol={itemLabelCol}
</Col> wrapperCol={itemWrapperCol}
) {...getFormItemProps(option)}
>
{renderFormControl(option)}
</Form.Item>
);
}}
</Form.Item>
</Col>
);
})()
); );
} }