topCars.vue 3.08 KB
<template>
  <div id="topCars">
    <div class="d-flex pt-2 pl-2">
        <span>
          <icon name="chart-bar" class="text-icon"></icon>
        </span>
        <div class="d-flex">
          <span class="fs-xl text mx-2">昨日车辆分数排行榜</span>
        </div>
      </div>
      <div class="d-flex jc-center body-box">
        <dv-scroll-board :config="config" style="width:100%;height:350px"/>
      </div>
      <!-- <div class="row1">
        <div class="num">#</div>
        <div class="car-no">车号</div>
        <div class="score">昨日得分</div>
      </div>

      <div class="row" :class="index%2==0 ? 'row2':' row1'"  v-for="(item,index) in list">
        <div class="num">{{index}}</div>
        <div class="car-no">{{item.carCode}}</div>
        <div class="score">{{item.avgScore}}</div>
      </div> -->
      <!-- <div class="row1">
         <div class="num">1</div>
        <div class="car-no">2222</div>
        <div class="score">20</div>
      </div>
      <div class="row2">
        <div class="num">1</div>
        <div class="car-no">2222</div>
        <div class="score">20</div>
      </div>
      <div class="row1">
         <div class="num">1</div>
        <div class="car-no">2222</div>
        <div class="score">20</div>
      </div>
      <div class="row2">
        <div class="num">1</div>
        <div class="car-no">2222</div>
        <div class="score">20</div>
      </div> -->
  </div>
</template>
<script>
// import CenterLeft1Chart from '@/components/echart/centerLeft/centerLeft1Chart'
export default {
  data() {
    return {
      config: {
        header: [ "车号", "安全分"],
        data: [],
        // waitTime:5000,
        // carousel:'page',
        rowNum: 7, //表格行数
        headerHeight: 45,
        headerBGC: "#0f1325", //表头
        oddRowBGC: "#0f1325", //奇数行
        evenRowBGC: "#171c33", //偶数行
        index: true,
        columnWidth: [50],
        align: ["center"]
      }
    }
  },
  components: {
  },
  props:{
      cdata: {
      type: Array,
      default: () => ([])
    },
  },
  watch: {
    cdata: {
      handler (newData) {
        //console.log("===align-items============")
        //console.log(newData);
        this.config.data=[];
        for(var i=0;i<newData?.length;i++){
          var d = [];
          d.push(newData[i].carCode+"");
          d.push(newData[i].avgScore+"");
          this.config.data.push(d);
        }
      },
      deep: true,
      immediate: true,
    }
  },
  mounted() {
  },
  methods: {
    changeTiming() {
     
    },
    changeNumber() {
    
    }
  }
}
</script>
<style lang="scss" scoped>
  $box-width: 500px;
  $box-height: 410px;

 #topCars {
   padding: 16px;
   height: $box-height;
   width: $box-width;
   padding:15px;
  .row1,.row2{
    display: flex;
    justify-content: space-between;
    height:35px;
    line-height:35px;
    padding:0 15px;
    .num{
      width:80px;
      text-align:left;
    }
    .car-no{
      width:80px;
      text-align:left;
    }
    .score{
      text-align:right;
      width:100px;
    }
  }
  .row2{
    background-color:#171d32;
  }
}
</style>