diff --git a/packages/core/client/src/collection-manager/templates/components/PreviewFields.tsx b/packages/core/client/src/collection-manager/templates/components/PreviewFields.tsx index e1098151e0..551e01505c 100644 --- a/packages/core/client/src/collection-manager/templates/components/PreviewFields.tsx +++ b/packages/core/client/src/collection-manager/templates/components/PreviewFields.tsx @@ -266,7 +266,11 @@ const PreviewCom = (props) => { }; function areEqual(prevProps, nextProps) { - return nextProps.name === prevProps.name && nextProps.sources === prevProps.sources; + return ( + nextProps.viewName === prevProps.viewName && + nextProps.schema === prevProps.schema && + nextProps.source === prevProps.source + ); } export const PreviewFields = React.memo(PreviewCom, areEqual); diff --git a/packages/core/client/src/collection-manager/templates/view.tsx b/packages/core/client/src/collection-manager/templates/view.tsx index 197fbda053..c059fbc2ef 100644 --- a/packages/core/client/src/collection-manager/templates/view.tsx +++ b/packages/core/client/src/collection-manager/templates/view.tsx @@ -73,7 +73,7 @@ export class ViewCollectionTemplate extends CollectionTemplate { when: '{{isPG}}', fulfill: { state: { - value: "{{$deps[0].split('_')?.[0]}}", + value: "{{$deps[0].split('@')?.[0]}}", }, }, otherwise: { @@ -91,7 +91,7 @@ export class ViewCollectionTemplate extends CollectionTemplate { when: '{{isPG}}', fulfill: { state: { - value: '{{$deps[0].match(/^([^_]+)_(.*)$/)?.[2]}}', + value: "{{$deps[0].split('@')?.[1]}}", }, }, otherwise: { @@ -125,6 +125,7 @@ export class ViewCollectionTemplate extends CollectionTemplate { type: 'array', 'x-component': PreviewFields, 'x-hidden': '{{ !createOnly }}', + 'x-decorator': 'FormItem', 'x-reactions': { dependencies: ['name'], fulfill: { @@ -133,6 +134,7 @@ export class ViewCollectionTemplate extends CollectionTemplate { }, }, }, + description: `{{t("Fields can only be used correctly if they are defined with an interface.")}}`, }, preview: { type: 'void', diff --git a/packages/core/client/src/locale/zh-CN.json b/packages/core/client/src/locale/zh-CN.json index 0a9a7e05a8..c39d622d4e 100644 --- a/packages/core/client/src/locale/zh-CN.json +++ b/packages/core/client/src/locale/zh-CN.json @@ -1025,7 +1025,7 @@ "Ellipsis": "省略", "Set block layout": "设置区块布局", "Add & Update": "添加 & 更新", - "Table size":"表格大小", + "Table size": "表格大小", "Hide column": "隐藏列", "In configuration mode, the entire column becomes transparent. In non-configuration mode, the entire column will be hidden. Even if the entire column is hidden, its configured default values and other settings will still take effect.": "在配置模式下,整个列会变为透明色。在非配置模式下,整个列将被隐藏。即使整个列被隐藏了,其配置的默认值和其他设置仍然有效。", "Plugin": "插件", @@ -1034,5 +1034,6 @@ "Package name": "包名", "Associate":"关联", "Please add or select record":"请添加或选择数据", - "No data":"暂无数据" + "No data":"暂无数据", + "Fields can only be used correctly if they are defined with an interface.": "只有字段设置了interface字段才能正常使用" } diff --git a/packages/plugins/@nocobase/plugin-data-source-manager/src/client/component/MainDataSourceManager/Configuration/ConfigurationTable.tsx b/packages/plugins/@nocobase/plugin-data-source-manager/src/client/component/MainDataSourceManager/Configuration/ConfigurationTable.tsx index 169d2f76e6..4d19157cb2 100644 --- a/packages/plugins/@nocobase/plugin-data-source-manager/src/client/component/MainDataSourceManager/Configuration/ConfigurationTable.tsx +++ b/packages/plugins/@nocobase/plugin-data-source-manager/src/client/component/MainDataSourceManager/Configuration/ConfigurationTable.tsx @@ -163,7 +163,7 @@ export const ConfigurationTable = () => { const schema = item.schema; return { label: schema ? `${schema}.${compile(item.name)}` : item.name, - value: schema ? `${schema}_${item.name}` : item.name, + value: schema ? `${schema}@${item.name}` : item.name, }; }); });