From a520626ef694299ce19a72243c967389774d3789 Mon Sep 17 00:00:00 2001 From: roymondchen Date: Thu, 7 May 2026 16:24:17 +0800 Subject: [PATCH] =?UTF-8?q?feat(editor):=20getPropsConfig=20=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E4=BC=A0=E5=85=A5=20node=20=E5=8F=82=E6=95=B0?= =?UTF-8?q?=E5=B9=B6=E4=BF=AE=E6=AD=A3=20CondOpSelectConfig=20=E7=B1=BB?= =?UTF-8?q?=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - props service 的 getPropsConfig 增加可选 data 参数以传递当前节点信息 - 修正 CondOpSelectConfig 的 type 字段为 'cond-op-select' Co-authored-by: Cursor --- packages/editor/src/layouts/props-panel/PropsPanel.vue | 2 +- packages/editor/src/services/props.ts | 4 ++-- packages/form-schema/src/editor.ts | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/editor/src/layouts/props-panel/PropsPanel.vue b/packages/editor/src/layouts/props-panel/PropsPanel.vue index bffbf306..f9802ec7 100644 --- a/packages/editor/src/layouts/props-panel/PropsPanel.vue +++ b/packages/editor/src/layouts/props-panel/PropsPanel.vue @@ -115,7 +115,7 @@ const init = async () => { } const type = node.value.type || (node.value.items ? 'container' : 'text'); - curFormConfig.value = await propsService.getPropsConfig(type); + curFormConfig.value = await propsService.getPropsConfig(type, { node: node.value }); values.value = node.value; }; diff --git a/packages/editor/src/services/props.ts b/packages/editor/src/services/props.ts index 22971008..3da07905 100644 --- a/packages/editor/src/services/props.ts +++ b/packages/editor/src/services/props.ts @@ -117,9 +117,9 @@ class Props extends BaseService { * @param type 组件类型 * @returns 组件属性表单配置 */ - public async getPropsConfig(type: string): Promise { + public async getPropsConfig(type: string, data?: { node?: MNode | null }): Promise { if (type === 'area') { - return await this.getPropsConfig('button'); + return await this.getPropsConfig('button', data); } return cloneDeep(this.state.propsConfigMap[toLine(type)] || (await this.fillConfig([]))); diff --git a/packages/form-schema/src/editor.ts b/packages/form-schema/src/editor.ts index 65c65c96..19c4a7a0 100644 --- a/packages/form-schema/src/editor.ts +++ b/packages/form-schema/src/editor.ts @@ -66,7 +66,7 @@ export interface CodeSelectColConfig extends FormItem { } export interface CondOpSelectConfig extends FormItem { - type: 'cond-op'; + type: 'cond-op-select'; parentFields?: string[]; }