diff --git a/packages/editor/src/layouts/sidebar/LayerPanel.vue b/packages/editor/src/layouts/sidebar/LayerPanel.vue index ea8676ea..23497986 100644 --- a/packages/editor/src/layouts/sidebar/LayerPanel.vue +++ b/packages/editor/src/layouts/sidebar/LayerPanel.vue @@ -156,7 +156,7 @@ const handleDragEnd = async (e: any) => { if (!tree.value) return; const { data: node } = e; const parent = editorService?.getParentById(node.id, false) as MContainer; - const layout = await editorService?.getLayout(parent); + const layout = await editorService?.getLayout(parent, node); node.style.position = layout; if (layout === Layout.RELATIVE) { node.style.top = 0; diff --git a/packages/editor/src/services/editor.ts b/packages/editor/src/services/editor.ts index 545f6bdc..ac4a11fe 100644 --- a/packages/editor/src/services/editor.ts +++ b/packages/editor/src/services/editor.ts @@ -193,7 +193,7 @@ class Editor extends BaseService { /** * 只有容器拥有布局 */ - public async getLayout(parent: MNode, node?: MNode): Promise { + public async getLayout(parent: MNode, node?: MNode | null): Promise { if (node && typeof node !== 'function' && isFixed(node)) return Layout.FIXED; if (parent.layout) {