Riku
2024-07-08 04e9d32ac49bf5a38adf3cd7dab6bff6e346eefd
src/views/management/ManagementView.vue
@@ -1,10 +1,56 @@
<template>
  <el-row> 统计管理 </el-row>
  <TaskStats></TaskStats>
  <!-- <el-row> 统计管理 </el-row> -->
  <ProblemTrack ref="statusRef"></ProblemTrack>
  <!-- <TaskStats ref="statusRef"></TaskStats> -->
  <EvaluateSummary :height="height"></EvaluateSummary>
  <!-- <TaskSummary ref="summaryRef"></TaskSummary> -->
  <ReInspectionView ref="summaryRef"></ReInspectionView>
</template>
<script setup>
<script>
import TaskStats from '@/views/management/TaskStats.vue'
import TaskSummary from '@/views/management/TaskSummary.vue'
import EvaluateSummary from '@/views/management/EvaluateSummary.vue'
import ReInspectionView from '@/views/inspection/ReInspectionView.vue'
import ProblemTrack from '@/views/inspection/problem/ProblemTrack.vue'
import { vResize } from '@/utils/resize-observer'
export default {
  components: { TaskStats, TaskSummary, EvaluateSummary, ReInspectionView, ProblemTrack },
  data() {
    return {
      // height: '500px',
      statusHeight: 200,
      summaryHeight: 200
    }
  },
  computed: {
    height() {
      const h = this.statusHeight + this.summaryHeight + 5
      return `calc(var(--fy-body-height) - ${h}px)`
    }
  },
  methods: {
    calcHeight() {
      const h1 = this.$refs.statusRef.$el.offsetHeight
      const h2 = this.$refs.summaryRef.$el.offsetHeight
      const h = h1 + h2
      return `calc(var(--fy-body-height) - ${h}px)`
    }
  },
  mounted() {
    vResize.mounted(this.$refs.statusRef.$el, ({ height }) => {
      this.statusHeight = height
    })
    vResize.mounted(this.$refs.summaryRef.$el, ({ height }) => {
      this.summaryHeight = height
    })
  },
  unmounted() {
    vResize.unmounted(this.$refs.statusRef.$el)
    vResize.unmounted(this.$refs.summaryRef.$el)
  }
}
</script>
<style scoped></style>