diff --git a/src/components/card/area-detail-card.vue b/src/components/card/area-detail-card.vue index eeae83e..70825e3 100644 --- a/src/components/card/area-detail-card.vue +++ b/src/components/card/area-detail-card.vue @@ -12,7 +12,18 @@ type Props = { const props = defineProps(); const editor = inject(props.token)!; -const pen = computed(() => editor.value.getPenById(props.current)); +// 订阅区域集合变化(含设备状态/连接状态),用于触发详情面板的响应式刷新 +const areasTick = computed(() => + editor.value.areas.value + .map((v: any) => `${v.id}:${v?.area?.deviceStatus ?? ''}:${v?.area?.isConnected ?? ''}`) + .join('|'), +); + +const pen = computed(() => { + // 引用 areasTick 以建立依赖关系 + void areasTick.value; + return editor.value.getPenById(props.current); +}); const area = computed(() => { const v = pen.value?.area; if (!v?.type) return null; @@ -61,6 +72,8 @@ const ruleText = computed(() => { if (area.value?.inoutflag === 2) return '后进先出'; return ''; }); + +// 无日志版:不输出调试信息