taskid:282,remark:'commit'

This commit is contained in:
fks-xuxinyue
2024-08-05 15:20:16 +08:00
parent bb9be7b4e0
commit 1990fd11e6
6 changed files with 264 additions and 147 deletions

View File

@@ -1,10 +1,10 @@
<template>
<a-tabs v-model:activeKey="activeKey" @change="handleTabChange">
<a-tab-pane key="1" tab="全部">
<a-tab-pane key="1" tab="全部">
<all ref="allRef" />
</a-tab-pane>
<a-tab-pane key="2" tab="用电量" force-render>
<category ref="electricRef" />
<a-tab-pane key="2" tab="用电量">
<category ref="electricRef" :tabId="tabId" />
</a-tab-pane>
<a-tab-pane key="3" tab="用水量">
<category ref="useWaterRef" />
@@ -21,14 +21,14 @@
</a-tabs>
</template>
<script lang="ts" setup>
import { ref } from 'vue';
import { ref, nextTick } from 'vue';
import all from './all/index.vue';
import category from './category/index.vue';
defineOptions({
name: 'carbonPlanning', // 与页面路由name一致缓存才可生效
components: {
all,
category
category,
},
});
const activeKey = ref('1');
@@ -39,30 +39,38 @@
const carbonEmissionsRef = ref<InstanceType<typeof category> | null>(null);
const provideHotRef = ref<InstanceType<typeof category> | null>(null);
// 切换tab页的回调
const tabId = ref(1);
const handleTabChange = (key) => {
console.log('Tab changed:', key);
// 在这里可以执行需要在页面切换时执行的逻辑
if (key === '1') {
if (allRef.value) {
allRef.value.drawEcharts();
}
nextTick(() => {
if (allRef.value) {
allRef.value.getTableData();
}
});
} else if (key === '2') {
if (electricRef.value) {
electricRef.value.getYearData(); // 调用子组件的方法
}
nextTick(() => {
if (electricRef.value) {
tabId.value = 1;
electricRef.value.getYearData(); // 调用子组件的方法
electricRef.value.getBallData();
electricRef.value.getYearPillarData();
}
});
} else if (key === '3') {
if (useWaterRef.value) {
useWaterRef.value.getYearData();
}
}else if (key === '4') {
} else if (key === '4') {
if (provideWaterRef.value) {
provideWaterRef.value.getYearData();
}
}else if (key === '5') {
} else if (key === '5') {
if (carbonEmissionsRef.value) {
carbonEmissionsRef.value.getYearData();
}
}else if (key === '6') {
} else if (key === '6') {
if (provideHotRef.value) {
provideHotRef.value.getYearData();
}