feat(sideBar): 侧边栏点击应用初始化默认增加appRuntimeData中的事件列表数据

master
钟良源 3 months ago
parent d7ca2dbd3b
commit 7047ef0ba5

@ -30,7 +30,8 @@ import {
updateFlowData, updateFlowData,
updateCanvasDataMap, updateCanvasDataMap,
updateCurrentAppData, updateCurrentAppData,
updateEventListOld updateEventListOld,
updateEventNodeList
} from '@/store/ideContainer'; } from '@/store/ideContainer';
import { addApp, getProjectEnv, editApp, deleteApp } from '@/api/apps'; import { addApp, getProjectEnv, editApp, deleteApp } from '@/api/apps';
import _ from 'lodash'; import _ from 'lodash';
@ -440,6 +441,10 @@ const SideBar: React.FC<SideBarProps> = ({
dispatch(updateFlowData({ [data.id]: res.data })); dispatch(updateFlowData({ [data.id]: res.data }));
// 更新 currentAppData 中的数据 // 更新 currentAppData 中的数据
dispatch(updateCurrentAppData({ ...findMenuItem(menuData[identity], children.key) })); dispatch(updateCurrentAppData({ ...findMenuItem(menuData[identity], children.key) }));
dispatch(updateEventNodeList({
eventSendNodeList: [],
eventlisteneList: []
}));
// 同步更新到 canvasDataMap // 同步更新到 canvasDataMap
if (res.data.main?.components) { if (res.data.main?.components) {
@ -565,7 +570,7 @@ const SideBar: React.FC<SideBarProps> = ({
useEffect(() => { useEffect(() => {
const handleToggleNodeVisibility = (event: CustomEvent) => { const handleToggleNodeVisibility = (event: CustomEvent) => {
const { appId, isVisible } = event.detail; const { appId, isVisible } = event.detail;
if (isVisible) { if (isVisible) {
// 显示节点 - 从隐藏节点集合中移除 // 显示节点 - 从隐藏节点集合中移除
setHiddenNodes(prev => { setHiddenNodes(prev => {
@ -573,14 +578,15 @@ const SideBar: React.FC<SideBarProps> = ({
newSet.delete(appId); newSet.delete(appId);
return newSet; return newSet;
}); });
} else { }
else {
// 隐藏节点 - 添加到隐藏节点集合 // 隐藏节点 - 添加到隐藏节点集合
setHiddenNodes(prev => new Set(prev).add(appId)); setHiddenNodes(prev => new Set(prev).add(appId));
} }
}; };
document.addEventListener('toggleNodeVisibility', handleToggleNodeVisibility as EventListener); document.addEventListener('toggleNodeVisibility', handleToggleNodeVisibility as EventListener);
return () => { return () => {
document.removeEventListener('toggleNodeVisibility', handleToggleNodeVisibility as EventListener); document.removeEventListener('toggleNodeVisibility', handleToggleNodeVisibility as EventListener);
}; };

Loading…
Cancel
Save