fix(editor): 弹层画布响应组件树点击

This commit is contained in:
roymondchen 2024-01-18 14:22:31 +08:00
parent 2d5bd2ddb4
commit 2114b89365
2 changed files with 6 additions and 0 deletions

View File

@ -106,16 +106,19 @@ const deleteHandler = () => {
const selectNode = async (id: Id) => { const selectNode = async (id: Id) => {
await services?.editorService.select(id); await services?.editorService.select(id);
services?.editorService.get('stage')?.select(id); services?.editorService.get('stage')?.select(id);
services?.stageOverlayService.get('stage')?.select(id);
}; };
const highlight = throttle((id: Id) => { const highlight = throttle((id: Id) => {
services?.editorService.highlight(id); services?.editorService.highlight(id);
services?.editorService.get('stage')?.highlight(id); services?.editorService.get('stage')?.highlight(id);
services?.stageOverlayService.get('stage')?.highlight(id);
}, 150); }, 150);
const unhightlight = () => { const unhightlight = () => {
services?.editorService.set('highlightNode', null); services?.editorService.set('highlightNode', null);
services?.editorService.get('stage')?.clearHighlight(); services?.editorService.get('stage')?.clearHighlight();
services?.stageOverlayService.get('stage')?.clearHighlight();
}; };
</script> </script>

View File

@ -26,6 +26,7 @@ export const useClick = (
} else { } else {
await services?.editorService.select(data); await services?.editorService.select(data);
services?.editorService.get('stage')?.select(data.id); services?.editorService.get('stage')?.select(data.id);
services?.stageOverlayService.get('stage')?.select(data.id);
} }
}; };
@ -50,6 +51,7 @@ export const useClick = (
await services?.editorService.multiSelect(newNodes); await services?.editorService.multiSelect(newNodes);
services?.editorService.get('stage')?.multiSelect(newNodes); services?.editorService.get('stage')?.multiSelect(newNodes);
services?.stageOverlayService.get('stage')?.multiSelect(newNodes);
}; };
const throttleTime = 300; const throttleTime = 300;
@ -62,6 +64,7 @@ export const useClick = (
const highlight = (data: TreeNodeData) => { const highlight = (data: TreeNodeData) => {
services?.editorService?.highlight(data); services?.editorService?.highlight(data);
services?.editorService?.get('stage')?.highlight(data.id); services?.editorService?.get('stage')?.highlight(data.id);
services?.stageOverlayService?.get('stage')?.highlight(data.id);
}; };
const nodeClickHandler = (event: MouseEvent, data: TreeNodeData) => { const nodeClickHandler = (event: MouseEvent, data: TreeNodeData) => {