diff --git a/packages/designer/src/designer/setting/setting-entry.ts b/packages/designer/src/designer/setting/setting-entry.ts index 8a81b5629..6db545c70 100644 --- a/packages/designer/src/designer/setting/setting-entry.ts +++ b/packages/designer/src/designer/setting/setting-entry.ts @@ -13,5 +13,5 @@ export interface SettingEntry extends SettingTarget { // 父级 readonly parent: SettingEntry; - get(propName: string | number): SettingEntry; + get(propName: string | number): SettingEntry | null; } diff --git a/packages/designer/src/designer/setting/setting-top-entry.ts b/packages/designer/src/designer/setting/setting-top-entry.ts index 1439e464a..ff65ad4b3 100644 --- a/packages/designer/src/designer/setting/setting-top-entry.ts +++ b/packages/designer/src/designer/setting/setting-top-entry.ts @@ -150,7 +150,8 @@ export class SettingTopEntry implements SettingEntry { /** * 获取子项 */ - get(propName: string | number): SettingPropEntry { + get(propName: string | number): SettingPropEntry | null { + if (!propName) return null; return this._settingFieldMap[propName] || (new SettingPropEntry(this, propName)); } diff --git a/packages/types/src/setting-target.ts b/packages/types/src/setting-target.ts index 6f686e069..571ea8022 100644 --- a/packages/types/src/setting-target.ts +++ b/packages/types/src/setting-target.ts @@ -42,7 +42,7 @@ export interface SettingTarget { setValue(value: any): void; // 取得子项 - get(propName: string | number): SettingTarget; + get(propName: string | number): SettingTarget | null; // 获取子项属性值 getPropValue(propName: string | number): any;