diff --git a/packages/ui/breadcrumb/src/util.ts b/packages/ui/breadcrumb/src/util.ts index 5ffcb2f56..e77e0c84b 100644 --- a/packages/ui/breadcrumb/src/util.ts +++ b/packages/ui/breadcrumb/src/util.ts @@ -11,7 +11,10 @@ export const transformData = ( */ const getKeyFields = (node: BreadcrumbDataItem, key: HiBaseFieldNameKeys) => { if (fieldNames) { - return node[(fieldNames[key] || key) as keyof BreadcrumbDataItem] + return ( + node[(fieldNames[key] || key) as keyof BreadcrumbDataItem] ?? + node[key as keyof BreadcrumbDataItem] + ) } return node[key as keyof BreadcrumbDataItem] } diff --git a/packages/ui/cascader/src/utils/index.ts b/packages/ui/cascader/src/utils/index.ts index 90d79427b..af06e3284 100644 --- a/packages/ui/cascader/src/utils/index.ts +++ b/packages/ui/cascader/src/utils/index.ts @@ -18,7 +18,7 @@ export const flattenTreeData = (treeData: CascaderDataItem[], fieldNames?: HiBas */ const getKeyFields = (node: any, key: any) => { if (fieldNames) { - return node[(fieldNames as any)[key] || key] + return node[(fieldNames as any)[key] || key] ?? node[key] } return node[key] } diff --git a/packages/ui/check-cascader/src/utils/index.ts b/packages/ui/check-cascader/src/utils/index.ts index a65799991..a33935a75 100644 --- a/packages/ui/check-cascader/src/utils/index.ts +++ b/packages/ui/check-cascader/src/utils/index.ts @@ -30,7 +30,7 @@ export const flattenTreeData = ( */ const getKeyFields = (node: any, key: any) => { if (fieldNames) { - return node[(fieldNames as any)[key] || key] + return node[(fieldNames as any)[key] || key] ?? node[key] } return node[key] } diff --git a/packages/ui/check-select/src/hooks/use-flatten-data.ts b/packages/ui/check-select/src/hooks/use-flatten-data.ts index c67472287..9edb4c5b9 100644 --- a/packages/ui/check-select/src/hooks/use-flatten-data.ts +++ b/packages/ui/check-select/src/hooks/use-flatten-data.ts @@ -15,7 +15,8 @@ export const useFlattenData = ({ data = NOOP_ARRAY, fieldNames = DEFAULT_FIELD_N export const flattenData = ({ data = NOOP_ARRAY, fieldNames = DEFAULT_FIELD_NAMES }: any) => { // 转换对象 - const getKeyFields = (node: any, key: HiBaseFieldNameKeys) => node[fieldNames[key] || key] + const getKeyFields = (node: any, key: HiBaseFieldNameKeys) => + node[fieldNames[key] || key] ?? node[key] return baseFlattenTree({ tree: data, diff --git a/packages/ui/check-tree-select/src/CheckTreeSelect.tsx b/packages/ui/check-tree-select/src/CheckTreeSelect.tsx index 7c6d2f44d..cb1b362d1 100644 --- a/packages/ui/check-tree-select/src/CheckTreeSelect.tsx +++ b/packages/ui/check-tree-select/src/CheckTreeSelect.tsx @@ -115,7 +115,7 @@ export const CheckTreeSelect = forwardRef { - return node[fieldNames[key] || key] + return node[fieldNames[key] || key] ?? node[key] }, [fieldNames] ) @@ -132,12 +132,11 @@ export const CheckTreeSelect = forwardRef { if (fieldNames) { - return node[(fieldNames[key] || key) as keyof DescriptionsItemProps] + return ( + node[(fieldNames[key] || key) as keyof DescriptionsItemProps] ?? + node[key as keyof DescriptionsItemProps] + ) } return node[key as keyof DescriptionsItemProps] } diff --git a/packages/ui/filter/src/utils.ts b/packages/ui/filter/src/utils.ts index e010b1fc3..e553c10ae 100644 --- a/packages/ui/filter/src/utils.ts +++ b/packages/ui/filter/src/utils.ts @@ -8,7 +8,7 @@ export const transformTreeData = ( ): FilterDataItem[] => { const getKeyFields = (node: FilterDataItem, key: HiBaseFieldNameKeys) => { if (fieldNames) { - return node[(fieldNames[key] || key) as keyof FilterDataItem] + return node[(fieldNames[key] || key) as keyof FilterDataItem] ?? node[key] } return node[key] } diff --git a/packages/ui/list/src/utils.ts b/packages/ui/list/src/utils.ts index e14752336..dcc12491f 100644 --- a/packages/ui/list/src/utils.ts +++ b/packages/ui/list/src/utils.ts @@ -7,7 +7,7 @@ export const transformData = ( ): ListDataItem[] => { const getKeyFields = (node: ListDataItem, key: HiBaseFieldNameKeys) => { if (fieldNames) { - return node[(fieldNames[key] || key) as keyof ListDataItem] + return node[(fieldNames[key] || key) as keyof ListDataItem] ?? node[key as keyof ListDataItem] } return node[key as keyof ListDataItem] } diff --git a/packages/ui/menu/src/util.ts b/packages/ui/menu/src/util.ts index 6ae78efef..ab28faad1 100644 --- a/packages/ui/menu/src/util.ts +++ b/packages/ui/menu/src/util.ts @@ -64,7 +64,7 @@ export const transformTreeData = (data: MenuDataItem[], fieldNames?: HiBaseField */ const getKeyFields = (node: MenuDataItem, key: HiBaseFieldNameKeys) => { if (fieldNames) { - return node[(fieldNames[key] || key) as keyof MenuDataItem] + return node[(fieldNames[key] || key) as keyof MenuDataItem] ?? node[key] } return node[key] } diff --git a/packages/ui/search/src/util.ts b/packages/ui/search/src/util.ts index c10531ef5..fcdd50e6a 100644 --- a/packages/ui/search/src/util.ts +++ b/packages/ui/search/src/util.ts @@ -11,7 +11,9 @@ export const transformData = ( */ const getKeyFields = (node: SearchDataItem, key: HiBaseFieldNameKeys) => { if (fieldNames) { - return node[(fieldNames[key] || key) as keyof SearchDataItem] + return ( + node[(fieldNames[key] || key) as keyof SearchDataItem] ?? node[key as keyof SearchDataItem] + ) } return node[key as keyof SearchDataItem] } diff --git a/packages/ui/select/src/hooks/use-flatten-data.ts b/packages/ui/select/src/hooks/use-flatten-data.ts index 8b99dac5b..645829f11 100644 --- a/packages/ui/select/src/hooks/use-flatten-data.ts +++ b/packages/ui/select/src/hooks/use-flatten-data.ts @@ -6,7 +6,7 @@ const DEFAULT_FIELD_NAMES = {} as any export const useFlattenData = ({ data = NOOP_ARRAY, fieldNames = DEFAULT_FIELD_NAMES }: any) => { const flattedData = useMemo(() => { - const getKeyFields = (node: any, key: string) => node[fieldNames[key] || key] + const getKeyFields = (node: any, key: string) => node[fieldNames[key] || key] ?? node[key] return baseFlattenTree({ tree: data, diff --git a/packages/ui/stepper/src/utils.ts b/packages/ui/stepper/src/utils.ts index db66f5001..0018f4a1c 100644 --- a/packages/ui/stepper/src/utils.ts +++ b/packages/ui/stepper/src/utils.ts @@ -8,7 +8,10 @@ export const transformData = ( ): StepperDataItem[] => { const getKeyFields = (node: StepperDataItem, key: HiBaseFieldNameKeys) => { if (fieldNames) { - return node[(fieldNames[key] || key) as keyof StepperDataItem] + return ( + node[(fieldNames[key] || key) as keyof StepperDataItem] ?? + node[key as keyof StepperDataItem] + ) } return node[key as keyof StepperDataItem] } diff --git a/packages/ui/transfer/src/utils.ts b/packages/ui/transfer/src/utils.ts index 8dc024412..c1292612e 100644 --- a/packages/ui/transfer/src/utils.ts +++ b/packages/ui/transfer/src/utils.ts @@ -8,7 +8,10 @@ export const transformData = ( ): TransferDataItem[] => { const getKeyFields = (node: TransferDataItem, key: HiBaseFieldNameKeys) => { if (fieldNames) { - return node[(fieldNames[key] || key) as keyof TransferDataItem] + return ( + node[(fieldNames[key] || key) as keyof TransferDataItem] ?? + node[key as keyof TransferDataItem] + ) } return node[key as keyof TransferDataItem] } diff --git a/packages/ui/tree-select/src/TreeSelect.tsx b/packages/ui/tree-select/src/TreeSelect.tsx index 421fc5394..eab1cbeb6 100644 --- a/packages/ui/tree-select/src/TreeSelect.tsx +++ b/packages/ui/tree-select/src/TreeSelect.tsx @@ -100,7 +100,7 @@ export const TreeSelect = forwardRef( */ const getKeyFields = useCallback( (node: any, key: string) => { - return node[fieldNames[key] || key] + return node[fieldNames[key] || key] ?? node[key] }, [fieldNames] )