From 97f4a6ccff24fef7d8125e15c1e2939e481c34cb Mon Sep 17 00:00:00 2001 From: YANG QIA <2013xile@gmail.com> Date: Fri, 18 Apr 2025 19:20:46 +0800 Subject: [PATCH] fix(data-vi): enum field options are empty in the filter block (#6706) * fix(data-vi): enum field options are empty in the filter block * fix: specific props --- .../plugin-data-visualization/src/client/hooks/filter.ts | 6 +++--- .../src/client/settings/chartFilterItem.tsx | 7 ++++--- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/packages/plugins/@nocobase/plugin-data-visualization/src/client/hooks/filter.ts b/packages/plugins/@nocobase/plugin-data-visualization/src/client/hooks/filter.ts index 38f63266bc..9bcfb4c46d 100644 --- a/packages/plugins/@nocobase/plugin-data-visualization/src/client/hooks/filter.ts +++ b/packages/plugins/@nocobase/plugin-data-visualization/src/client/hooks/filter.ts @@ -135,11 +135,10 @@ export const useChartFilter = () => { 'x-decorator': 'ChartFilterFormItem', 'x-data-source': dataSource, 'x-collection-field': `${fieldName}.${field.name}`, - ...defaultOperator?.schema, 'x-component-props': { utc: false, underFilter: true, - ...field.uiSchema?.['x-component-props'], + component: defaultOperator?.schema?.['x-component'], 'filter-operator': defaultOperator, 'data-source': dataSource, 'collection-field': `${fieldName}.${field.name}`, @@ -195,14 +194,15 @@ export const useChartFilter = () => { 'x-settings': 'chart:filterForm:item', 'x-toolbar': 'ChartFilterItemToolbar', 'x-decorator': 'ChartFilterFormItem', + 'x-component': 'CollectionField', 'x-data-source': dataSource, 'x-collection-field': `${fieldName}.${child.name}`, ...child.schema, title, - ...defaultOperator?.schema, 'x-component-props': { utc: false, underFilter: true, + component: defaultOperator?.schema?.['x-component'], 'filter-operator': defaultOperator, 'data-source': dataSource, 'collection-field': `${fieldName}.${child.name}`, diff --git a/packages/plugins/@nocobase/plugin-data-visualization/src/client/settings/chartFilterItem.tsx b/packages/plugins/@nocobase/plugin-data-visualization/src/client/settings/chartFilterItem.tsx index 81e7d04f28..d4855eface 100644 --- a/packages/plugins/@nocobase/plugin-data-visualization/src/client/settings/chartFilterItem.tsx +++ b/packages/plugins/@nocobase/plugin-data-visualization/src/client/settings/chartFilterItem.tsx @@ -56,6 +56,7 @@ function useFieldComponentName(): string { const map = { // AssociationField 的 mode 默认值是 Select AssociationField: 'Select', + 'DatePicker.FilterWithPicker': 'DatePicker', }; const fieldComponentName = fieldSchema?.['x-component-props']?.['mode'] || @@ -163,15 +164,15 @@ const EditOperator = () => { const setOperatorComponent = (operator: any, component: any, props = {}) => { const componentProps = field.componentProps || {}; - field.component = component; field.componentProps = { ...componentProps, + component, 'filter-operator': operator, ...props, }; - fieldSchema['x-component'] = component; fieldSchema['x-component-props'] = { ...fieldSchema['x-component-props'], + component, 'filter-operator': operator, ...props, }; @@ -179,9 +180,9 @@ const EditOperator = () => { dn.emit('patch', { schema: { 'x-uid': fieldSchema['x-uid'], - 'x-component': component, 'x-component-props': { ...fieldSchema['x-component-props'], + component, 'filter-operator': operator, ...props, },