riku
2025-07-10 2cffd9c7db5c3191cf172641c800e5a328d6f3af
src/components/monitor/FactorTrend.vue
@@ -1,14 +1,15 @@
<template>
  <BaseCard size="medium" direction="left">
    <template #content>
      <el-scrollbar height="calc(98vh - var(--bevel-length-2))">
      <DashBoard ref="dashBoardRef" :factor-datas="factorDatas"></DashBoard>
      <el-scrollbar :height="height" always>
        <div v-for="item in seriesList" :key="item.key">
          <el-row
            v-show="selectFactorType.includes(item.series.key)"
            justify="space-between"
            class="wrap"
          >
            <div class="flex-col">
            <div class="flex-col m-r-4">
              <div class="factor-name">{{ item.series.name }}</div>
              <div class="factor-value">
                {{ item.series.currentData }}
@@ -34,8 +35,10 @@
import { checkboxOptions } from '@/constant/checkbox-options';
import { factorName } from '@/constant/factor-name';
import { factorUnit } from '@/constant/factor-unit';
import DashBoard from '@/views/realtimemode/component/DashBoard.vue';
export default {
  components: { DashBoard },
  props: {
    loading: Boolean,
    factorDatas: FactorDatas,
@@ -56,16 +59,13 @@
  },
  data() {
    return {
      height: 'calc(99vh - var(--bevel-length-2))',
      xAxis: [],
      allSeries: new Map(),
      seriesList: []
    };
  },
  computed: {
    // factorTypes() {
    //   return checkboxOptions(this.deviceType);
    // }
  },
  computed: {},
  watch: {
    factorDatas: {
      handler() {
@@ -165,7 +165,16 @@
    getUnit(label) {
      // fixeme 2024.5.15 修复CO展示单位和原始数据不一致问题
      return label == 'CO' ? 'μg/m³' : factorUnit[label].unit;
    },
    calcHeight() {
      const h1 = this.$refs.dashBoardRef
        ? this.$refs.dashBoardRef.$el.offsetHeight
        : 0;
      this.height = `calc(98vh - var(--bevel-length-2) - ${h1}px)`;
    }
  },
  mounted() {
    this.calcHeight();
  }
};
</script>