From e1f9a0453cbc7141dc81a31173355d7f43750fa9 Mon Sep 17 00:00:00 2001 From: rookie4show Date: Sun, 22 Feb 2026 10:34:18 +0800 Subject: [PATCH] =?UTF-8?q?wiki=E9=9B=86=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/YysEditorEmbed.vue | 40 ++++++++++++++++++++-------------------- src/index.js | 1 + 2 files changed, 21 insertions(+), 20 deletions(-) diff --git a/src/YysEditorEmbed.vue b/src/YysEditorEmbed.vue index 21f4f57..4730b82 100644 --- a/src/YysEditorEmbed.vue +++ b/src/YysEditorEmbed.vue @@ -154,26 +154,6 @@ const contentHeight = computed(() => { const initPreviewMode = () => { if (!previewContainerRef.value) return - // 注册自定义节点 - register({ - type: 'imageNode', - component: ImageNode - }) - register({ - type: 'assetSelector', - component: AssetSelectorNode - }) - register({ - type: 'textNode', - component: TextNode, - model: TextNodeModel - }) - register({ - type: 'vectorNode', - component: VectorNode, - model: VectorNodeModel - }) - // 创建 LogicFlow 实例(只读模式) previewLf.value = new LogicFlow({ container: previewContainerRef.value, @@ -192,6 +172,26 @@ const initPreviewMode = () => { plugins: [Snapshot, MiniMap, Control] }) + // 注册自定义节点(必须在 LogicFlow 实例创建后) + register({ + type: 'imageNode', + component: ImageNode + }, previewLf.value) + register({ + type: 'assetSelector', + component: AssetSelectorNode + }, previewLf.value) + register({ + type: 'textNode', + component: TextNode, + model: TextNodeModel + }, previewLf.value) + register({ + type: 'vectorNode', + component: VectorNode, + model: VectorNodeModel + }, previewLf.value) + // 渲染数据 if (props.data) { previewLf.value.render(props.data) diff --git a/src/index.js b/src/index.js index c437a20..d5b1822 100644 --- a/src/index.js +++ b/src/index.js @@ -3,6 +3,7 @@ import YysEditorEmbed from './YysEditorEmbed.vue' // 导出组件 export { YysEditorEmbed } +export { YysEditorEmbed as YysEditorPreview } // 别名导出,用于 wiki 预览场景 // 默认导出 export default YysEditorEmbed