From fa315a1261178c662f1e9e2c44e27629eb490825 Mon Sep 17 00:00:00 2001 From: Katherine Date: Tue, 3 Dec 2024 19:32:07 +0800 Subject: [PATCH] fix: incorrect parameters passed in table block filtering (#5773) --- .../data-blocks/table/hooks/useTableBlockProps.tsx | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/packages/core/client/src/modules/blocks/data-blocks/table/hooks/useTableBlockProps.tsx b/packages/core/client/src/modules/blocks/data-blocks/table/hooks/useTableBlockProps.tsx index bd5dbad023..1fb03c9177 100644 --- a/packages/core/client/src/modules/blocks/data-blocks/table/hooks/useTableBlockProps.tsx +++ b/packages/core/client/src/modules/blocks/data-blocks/table/hooks/useTableBlockProps.tsx @@ -110,12 +110,8 @@ export const useTableBlockProps = () => { dataBlocks.forEach((block) => { const target = targets.find((target) => target.uid === block.uid); if (!target) return; - - const isForeignKey = block.foreignKeyFields?.some((field) => field.name === target.field); - const sourceKey = getSourceKey(currentBlock, target.field); - const recordKey = isForeignKey ? sourceKey : ctx.rowKey; - const value = [record[recordKey]]; - + const sourceKey = getSourceKey(currentBlock, target.field) || ctx.rowKey || 'id'; + const value = [record[sourceKey]]; const param = block.service.params?.[0] || {}; // 保留原有的 filter const storedFilter = block.service.params?.[1]?.filters || {}; @@ -165,5 +161,5 @@ export const useTableBlockProps = () => { function getSourceKey(currentBlock: DataBlock, field: string) { const associationField = currentBlock?.associatedFields?.find((item) => item.foreignKey === field); - return associationField?.sourceKey || 'id'; + return associationField?.sourceKey || field?.split?.('.')?.[1]; }