whychdw
2020-08-29 c08e9c55309e5528f55a3e05e4c32beab0a882ee
提交内容
4个文件已修改
102 ■■■■■ 已修改文件
src/pages/dataTest/HomeList.vue 30 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/pages/dataTest/history.vue 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/pages/dataTest/realTime.vue 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/pages/home.vue 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/pages/dataTest/HomeList.vue
@@ -23,6 +23,7 @@
import {
   getTreeDataByKey,
   getQueryString,
} from '../../assets/js/tools'
export default {
@@ -30,23 +31,22 @@
        ContentBox,
        MyElTree,
    },
    props: {
        defaultExpandedKeys: {
            type: Array,
            default() {
                return []
            },
        },
        currentNodeKey: {
            type: [String, Number],
            default: ""
        }
    },
    data() {
        // 默认展开的节点
        let defaultExpandedKeys = [
            getQueryString("province"),
            getQueryString("city"),
            getQueryString("county"),
            getQueryString("home")
        ];
        // 默认激活的电池组
        let currentNodeKey = getQueryString("batt") ? getQueryString("batt") : "";
        return {
           data: [],
           expanded: [],
           currentKey: '',
            defaultExpandedKeys,
            currentNodeKey,
            data: [],
            expanded: [],
            currentKey: '',
        }
    },
    methods: {
src/pages/dataTest/history.vue
@@ -2,9 +2,7 @@
    <flex-layout direction="row" class="page-history">
        <home-list slot="header"
        @toggleChange="toggleChange"
        @leaf-click="leafClick"
        :default-expanded-keys="defaultExpandedKeys"
        :current-node-key="currentNodeKey"></home-list>
        @leaf-click="leafClick"></home-list>
        <content-box style="margin-left: 4px; margin-right: 4px;" :title="battFullName">
            <div slot="box-tools" class="box-tools">
              <el-tooltip class="item" effect="dark" content="实时数据" placement="bottom">
@@ -107,7 +105,9 @@
  searchHistory
} from "../../assets/js/history";
import { formatSeconds, getQueryString } from "../../assets/js/tools";
import {
  formatSeconds
} from "../../assets/js/tools";
// 端信息
let allData = {
@@ -136,15 +136,7 @@
    LineChart
  },
  data() {
    // 默认展开的节点
    let defaultExpandedKeys = [
      getQueryString("province"),
      getQueryString("city"),
      getQueryString("county"),
      getQueryString("home")
    ];
    // 默认激活的电池组
    let currentNodeKey = getQueryString("batt") ? getQueryString("batt") : "";
    return {
      data: [],
      batt: {},
@@ -184,8 +176,6 @@
      },
      slider: 100,
      testTimeLong: [],
      defaultExpandedKeys: defaultExpandedKeys,
      currentNodeKey: currentNodeKey
    };
  },
  methods: {
@@ -606,7 +596,6 @@
    // 向父级发送同步页面的指令
    syncPage() {
      let batt = this.batt;
      console.log(batt);
      let search="?province="+batt.StationName1
      +"&city="+batt.StationName2+"&county="+batt.StationName5
      +"&home="+batt.StationName3+"&batt="+batt.BattGroupId;
src/pages/dataTest/realTime.vue
@@ -1,7 +1,14 @@
<template>
  <flex-layout direction="row" class="page-real-time">
    <home-list slot="header" @toggleChange="toggleChange" @leaf-click="leafClick"></home-list>
    <home-list slot="header"
    @toggleChange="toggleChange"
    @leaf-click="leafClick"></home-list>
    <content-box style="margin-left: 4px; margin-right: 4px;" :title="battFullName">
      <div slot="box-tools" class="box-tools">
        <el-tooltip class="item" effect="dark" content="历史数据" placement="bottom">
          <i class="iconfont el-icon-jinru" @click="syncPage"></i>
        </el-tooltip>
      </div>
      <flex-layout>
        <div class="content-header" slot="header" :model="inputs">
          <div class="table-layout">
@@ -370,6 +377,24 @@
        str = "00H00M";
      }
      return str;
    },
    // 向父级发送同步页面的指令
    syncPage() {
      let batt = this.batt;
      let search="?province="+batt.StationName1
      +"&city="+batt.StationName2+"&county="+batt.StationName5
      +"&home="+batt.StationName3+"&batt="+batt.BattGroupId;
      window.parent.postMessage({
        cmd: "syncPage",
        params: {
          pageInfo: {
            label: '历史数据',
            name: 'history',
            src: '#/history'+search,
            closable: true,
          }
        },
      }, "*");
    }
  },
  computed: {
@@ -441,6 +466,19 @@
  box-sizing: border-box;
  height: 100%;
}
.box-tools {
  line-height: 32px;
}
.box-tools .iconfont {
  font-size: 20px;
}
.box-tools .iconfont:hover {
  cursor: pointer;
  color: #cfcfcf;
}
.box-tools .iconfont:active {
  color: #FF0000;
}
</style>
src/pages/home.vue
@@ -104,19 +104,28 @@
                break;
            }
        },
        // 同步页面
        syncPage(params) {
            let tabs = this.tabs;
            let menu = params.pageInfo;
            // 检测name是否已经存在tabs内
            let notIn = true;
            tabs.forEach(item=>{
            let index = -1;
            tabs.forEach((item, flag)=>{
                // 页面是否已经打开
                if(item.name == menu.name) {
                    notIn = false;
                    index = flag;
                }
            });
            // 不在, 添加menu到tabs中
            if(notIn) {
                tabs.push(menu);
            }else {        // 页面已存在,并刷新页面
                tabs.splice(index, 1);
                this.$nextTick(()=>{
                    tabs.splice(index, 0, menu);
                });
            }
            // 设置激活的导航