diff --git a/components/vc-select/utils/legacyUtil.ts b/components/vc-select/utils/legacyUtil.ts index 8e1505ef9..8154e7f6e 100644 --- a/components/vc-select/utils/legacyUtil.ts +++ b/components/vc-select/utils/legacyUtil.ts @@ -37,17 +37,18 @@ export function convertChildrenToData( props, } = node as VNode & { type: { isSelectOptGroup?: boolean }; - children: { default?: () => any }; + children: { default?: () => any; label?: () => any }; }; if (optionOnly || !isSelectOptGroup) { return convertNodeToOption(node); } const child = children && children.default ? children.default() : undefined; + const label = props?.label || children.label?.() || key; return { key: `__RC_SELECT_GRP__${key === null ? index : key}__`, - label: key, ...props, + label, options: convertChildrenToData(child || []), } as any; })