修复Panel图标状态同步:当Area最大化或还原时,同步更新Panel的maximized状态
This commit is contained in:
@@ -27,6 +27,7 @@
|
||||
}"
|
||||
@close="onCloseFloatingArea(area.id)"
|
||||
@update:position="onUpdatePosition(area.id, $event)"
|
||||
@panelMaximizeSync="onPanelMaximizeSync"
|
||||
>
|
||||
<!-- 每个Area内渲染其包含的TabPages -->
|
||||
<TabPage
|
||||
@@ -302,6 +303,17 @@ watch(floatingAreas, (newAreas) => {
|
||||
});
|
||||
}, { deep: true });
|
||||
|
||||
// 处理Panel最大化同步事件
|
||||
const onPanelMaximizeSync = ({ areaId, maximized }) => {
|
||||
// 查找对应的Area
|
||||
const area = floatingAreas.value.find(a => a.id === areaId);
|
||||
if (area && area.panels && area.panels.length === 1) {
|
||||
// 更新Panel的maximized状态
|
||||
area.panels[0] = { ...area.panels[0], maximized };
|
||||
console.log(`同步Area ${areaId} 的Panel最大化状态为:`, maximized);
|
||||
}
|
||||
}
|
||||
|
||||
// 暴露方法给父组件
|
||||
defineExpose({
|
||||
addFloatingPanel
|
||||
|
||||
Reference in New Issue
Block a user