zhangzengfei
2021-05-21 5ec1554f347f91bcd1fbc8e7550fde8edec5a3d3
修复运行时提示的错误
7个文件已修改
394 ■■■■■ 已修改文件
src/api/shuohuang.ts 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/pages/maintain/index/App.vue 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/pages/maintain/views/systemClean.vue 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/pages/systemSettings/views/NetSettings.vue 189 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/pages/systemSettings/views/generalSettings.vue 81 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/pages/systemSettings/views/keyboardLanguage.vue 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
vue.config.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/shuohuang.ts
@@ -36,7 +36,7 @@
    method: 'get',
    params: query
  })
  export const getCarVideos = (query: any) =>
export const getCarVideos = (query: any) =>
  request({
    url: '/data/api-c/lkg/getCarVideos',
    method: 'get',
@@ -125,39 +125,44 @@
    method: 'post',
    data
  })
export const uploadDirectory = (data:any) =>
export const uploadDirectory = (data: any) =>
  request({
    url:'/data/api-c/user/uploadMulti',
    method:'post',
    url: '/data/api-c/user/uploadMulti',
    method: 'post',
    data
  })
export const getTransferRecord = (query:any) => request({
  url:'/data/api-c/saverecord/getlst',
export const getTransferRecord = (query: any) => request({
  url: '/data/api-c/saverecord/getlst',
  method: 'get',
  params: query
})
export const getTransferStatusList = () => request({
  url:'/data/api-c/saverecord/getStatusList',
  url: '/data/api-c/saverecord/getStatusList',
  method: 'get'
})
export const addDevice = (data:any)=>request({
  url:'/data/api-c/device/add',
export const addDevice = (data: any) => request({
  url: '/data/api-c/device/add',
  method: 'post',
  data
})
export const getDeviceList = ()=>request({
  url:'/data/api-c/device/getlst',
export const getDeviceList = () => request({
  url: '/data/api-c/device/getlst',
  method: 'get'
})
export const getDeviceInfoById = (query:any) => request({
  url:'/data/api-c/slot/getlst',
export const getDeviceInfoById = (query: any) => request({
  url: '/data/api-c/slot/getlst',
  method: 'get',
  params: query
})
export const getEventVideo = (query:any) => request({
  url:'/data/api-c/lkg/getEventClip',
export const getEventVideo = (query: any) => request({
  url: '/data/api-c/lkg/getEventClip',
  method: 'get',
  params: query
})
export const downloadFile = (query: any) => request({
  url: '/data/api-c/lkg/getEventClip',
  method: 'get',
  params: query
})
src/pages/maintain/index/App.vue
@@ -11,22 +11,10 @@
        <span class="card-text">{{ item.name }}</span>
      </div>
    </div>
    <systemClean
      v-if="activePage == '系统清理'"
      style="width: 100%"
    ></systemClean>
    <updateSettings
      v-if="activePage == '更新设置'"
      style="width: 100%"
    ></updateSettings>
    <back-up
      v-if="activePage == '备份还原'"
      style="width: 100%"
    ></back-up>
    <restartSettings
      v-if="activePage == '重启设置'"
      style="width: 100%"
    ></restartSettings>
    <systemClean v-if="activePage == '系统清理'" style="width: 100%"></systemClean>
    <updateSettings v-if="activePage == '更新设置'" style="width: 100%"></updateSettings>
    <back-up v-if="activePage == '备份还原'" style="width: 100%"></back-up>
    <restartSettings v-if="activePage == '重启设置'" style="width: 100%"></restartSettings>
  </div>
</template>
@@ -36,8 +24,6 @@
  saveClockInfo,
  testNTPserver,
} from "@/api/system";
import switchBar from "../components/switchBar";
import ipInput from "@/components/subComponents/IPInput";
import systemClean from "../views/systemClean";
import updateSettings from "../views/updateSettings";
import BackUp from "../views/backUp";
@@ -45,8 +31,6 @@
export default {
  name: "settings",
  components: {
    switchBar,
    ipInput,
    systemClean,
    updateSettings,
    BackUp,
@@ -140,7 +124,6 @@
    border-right: 5px solid rgba(248, 248, 248, 1);
    box-sizing: border-box;
    .account-left {
      .add-account {
        color: rgba(61, 104, 225, 1);
        margin-top: 50px;
@@ -171,7 +154,6 @@
          font-size: 14px;
        }
      }
    }
    .datetime-left {
      .time-card {
src/pages/maintain/views/systemClean.vue
@@ -1,9 +1,5 @@
<template>
  <div class="clear"
      v-loading="loading"
      :element-loading-text="loadingText"
  >
  <div class="clear" v-loading="loading" :element-loading-text="loadingText">
    <div class="head">
      <span class="t">请选择要清理的数据范围</span>
      <el-date-picker
@@ -16,8 +12,7 @@
        start-placeholder="开始日期"
        end-placeholder="结束日期"
        :picker-options="pickerOptions"
      >
      </el-date-picker>
      ></el-date-picker>
    </div>
    <div class="desc">
@@ -34,9 +29,7 @@
      <div class="warm">
        <!-- <span class="icon iconfont" style="margin-right:5px">&#xe690;</span> -->
        <i class="iconfont icontishi-zhuyi"></i>
        <span class="text"
          >请注意,按以上日期范围删除的数据不可恢复,立即生效,请谨慎操作!</span
        >
        <span class="text">请注意,按以上日期范围删除的数据不可恢复,立即生效,请谨慎操作!</span>
      </div>
    </div>
  </div>
@@ -59,17 +52,10 @@
      dataRange: [
        this.$moment().format("YYYY-MM-DD HH:mm:ss"),
        this.$moment().format("YYYY-MM-DD HH:mm:ss"),
      ],
      pickerOptions: {
        disabledDate(time) {
          var day = new Date();
          day.setTime(day.getTime() - 24 * 60 * 60 * 1000);
          return time.getTime() > day;
        },
      },
      ]
    };
  },
  mounted() {},
  mounted() { },
  methods: {
    deleteData() {
@@ -78,10 +64,10 @@
      var showEndTime = timeRange[1];
      this.$confirm(
        "提示:" +
          showStartTime +
          " 至 " +
          showEndTime +
          " 产生的全部数据将被删除,此操作立即生效,不可恢复,是否删除?",
        showStartTime +
        " 至 " +
        showEndTime +
        " 产生的全部数据将被删除,此操作立即生效,不可恢复,是否删除?",
        {
          center: true,
          cancelButtonClass: "comfirm-class-cancle",
@@ -112,7 +98,7 @@
              this.loading = false
            });
        })
        .catch(() => {});
        .catch(() => { });
    },
    format(array) {
      return [
@@ -151,8 +137,8 @@
      border: none;
    }
    .el-range-editor--small .el-range-separator {
    line-height: 26px;
}
      line-height: 26px;
    }
  }
  .desc {
    margin-top: 50px;
@@ -200,7 +186,7 @@
      align-items: center;
      justify-content: center;
      .iconfont {
          font-size: 16px;
        font-size: 16px;
        color: #e99038;
        margin-right: 5px;
src/pages/systemSettings/views/NetSettings.vue
@@ -3,15 +3,21 @@
    <div class="cluster-content">
      <div class="cluster-center" ref="left">
        <div class="menu-item" @click="openRight('net')">
          <div><span class="icon iconfont">&#xe646;</span>网络设置</div>
          <div>
            <span class="icon iconfont">&#xe646;</span>网络设置
          </div>
          <div class="status">已连接</div>
        </div>
        <div class="menu-item" @click="openRight('wifi')">
          <div><span class="icon iconfont">&#xe646;</span>无线网络</div>
          <div>
            <span class="icon iconfont">&#xe646;</span>无线网络
          </div>
          <div class="status">已连接</div>
        </div>
        <div class="menu-item" @click="openRight('wire')">
          <div><span class="icon iconfont">&#xe646;</span>有线网络</div>
          <div>
            <span class="icon iconfont">&#xe646;</span>有线网络
          </div>
          <div class="status">已连接</div>
        </div>
      </div>
@@ -27,35 +33,23 @@
            v-loading="joinLoading"
          >
            <el-form-item label="设备名称" prop="deviceName">
              <el-input
                v-model="ruleForm.deviceName"
                size="small"
                placeholder="必填"
              ></el-input>
              <el-input v-model="ruleForm.deviceName" size="small" placeholder="必填"></el-input>
            </el-form-item>
            <el-form-item label="端口" prop="port">
              <el-input
                v-model="ruleForm.port"
                placeholder="选填,外部访问的端口"
                size="small"
              ></el-input>
              <el-input v-model="ruleForm.port" placeholder="选填,外部访问的端口" size="small"></el-input>
            </el-form-item>
            <div class="save-btn">保存</div>
          </el-form>
        </div>
        <div class="wifi" v-if="activePage == 'wifi' && !inWifiDetail">
          <switchBar
            :barName="`无线网卡`"
            @switchChange="wifiControl"
            :value="isOpenWifi"
          ></switchBar>
          <switchBar :barName="`无线网卡`" @switchChange="wifiControl" :value="isOpenWifi"></switchBar>
          <div class="wifi-option" v-for="(item, i) in wifiList" :key="i">
            <div class="name">
              <span class="icon iconfont">&#xe646;</span>
              <span> {{ item.name }} </span>
              <span>{{ item.name }}</span>
            </div>
            <div class="more-detail">
@@ -64,8 +58,7 @@
                class="icon iconfont"
                style="margin-left: 10px"
                @click="checkWifi(item)"
                >&#xe640;</span
              >
              >&#xe640;</span>
            </div>
          </div>
        </div>
@@ -90,20 +83,11 @@
            </el-form-item>
            <el-form-item label="密码" prop="password">
              <el-input
                v-model="wifiForm.password"
                placeholder="请输入密码"
                size="small"
                show-password
              ></el-input>
              <el-input v-model="wifiForm.password" placeholder="请输入密码" size="small" show-password></el-input>
            </el-form-item>
          </el-form>
          <switchBar
            :barName="`高级设置`"
            @switchChange="highClassSetting"
            :value="isHighClass"
          ></switchBar>
          <switchBar :barName="`高级设置`" @switchChange="highClassSetting" :value="isHighClass"></switchBar>
          <div class="title">IPV4</div>
          <!-- <el-form
@@ -121,14 +105,9 @@
                show-password
              ></el-input>
            </el-form-item>
          </el-form> -->
          </el-form>-->
          <el-form
            :model="ipv4Form"
            :rules="ipv4FormRules"
            ref="ipv4Form"
            label-width="150px"
          >
          <el-form :model="ipv4Form" :rules="ipv4FormRules" ref="ipv4Form" label-width="150px">
            <el-form-item label="方法">
              <el-select v-model="value" placeholder="请选择" size="small">
                <el-option
@@ -136,51 +115,30 @@
                  :key="item.value"
                  :label="item.label"
                  :value="item.value"
                >
                </el-option>
                ></el-option>
              </el-select>
            </el-form-item>
            <el-form-item label="IP" prop="ip">
              <ip-input
                :ip="ipv4Form.ip"
                @on-blur="ipv4Form.ip = arguments[0]"
              ></ip-input>
              <ip-input :ip="ipv4Form.ip" @on-blur="ipv4Form.ip = arguments[0]"></ip-input>
            </el-form-item>
            <el-form-item label="子网掩码" prop="subMask">
              <ip-input
                :ip="ipv4Form.subMask"
                @on-blur="ipv4Form.subMask = arguments[0]"
              ></ip-input>
              <ip-input :ip="ipv4Form.subMask" @on-blur="ipv4Form.subMask = arguments[0]"></ip-input>
            </el-form-item>
            <el-form-item label="网关" prop="gateway">
              <ip-input
                :ip="ipv4Form.gateway"
                @on-blur="ipv4Form.gateway = arguments[0]"
              ></ip-input>
              <ip-input :ip="ipv4Form.gateway" @on-blur="ipv4Form.gateway = arguments[0]"></ip-input>
            </el-form-item>
            <el-form-item label="首选DNS" prop="dns">
              <ip-input
                :ip="ipv4Form.dns1"
                @on-blur="ipv4Form.dns1 = arguments[0]"
              ></ip-input>
              <ip-input :ip="ipv4Form.dns1" @on-blur="ipv4Form.dns1 = arguments[0]"></ip-input>
            </el-form-item>
            <el-form-item label="备用DNS" prop="dns">
              <ip-input
                :ip="ipv4Form.dns2"
                @on-blur="ipv4Form.dns2 = arguments[0]"
              ></ip-input>
              <ip-input :ip="ipv4Form.dns2" @on-blur="ipv4Form.dns2 = arguments[0]"></ip-input>
            </el-form-item>
          </el-form>
          <div class="title">IPV6</div>
          <el-form
            :model="ipv6Form"
            :rules="ipv6FormRules"
            ref="ipv4Form"
            label-width="150px"
          >
          <el-form :model="ipv6Form" :rules="ipv6FormRules" ref="ipv4Form" label-width="150px">
            <el-form-item label="方法">
              <el-select v-model="value" placeholder="请选择" size="small">
                <el-option
@@ -188,23 +146,15 @@
                  :key="item.value"
                  :label="item.label"
                  :value="item.value"
                >
                </el-option>
                ></el-option>
              </el-select>
            </el-form-item>
            <el-form-item label="IP地址" prop="ip">
              <ip-input
                :ip="ipv6Form.ip"
                @on-blur="ipv6Form.ip = arguments[0]"
              ></ip-input>
              <ip-input :ip="ipv6Form.ip" @on-blur="ipv6Form.ip = arguments[0]"></ip-input>
            </el-form-item>
            <el-form-item label="前缀" prop="subMask">
              <div style="display: flex">
                <el-input
                  v-model="wifiForm.password"
                  placeholder=""
                  size="small"
                ></el-input>
                <el-input v-model="wifiForm.password" placeholder size="small"></el-input>
                <div class="ad">-</div>
                <div class="ad">+</div>
@@ -213,22 +163,13 @@
            </el-form-item>
            <el-form-item label="网关" prop="gateway">
              <ip-input
                :ip="ipv6Form.gateway"
                @on-blur="ipv6Form.gateway = arguments[0]"
              ></ip-input>
              <ip-input :ip="ipv6Form.gateway" @on-blur="ipv6Form.gateway = arguments[0]"></ip-input>
            </el-form-item>
            <el-form-item label="首选DNS" prop="dns">
              <ip-input
                :ip="ipv6Form.dns1"
                @on-blur="ipv6Form.dns1 = arguments[0]"
              ></ip-input>
              <ip-input :ip="ipv6Form.dns1" @on-blur="ipv6Form.dns1 = arguments[0]"></ip-input>
            </el-form-item>
            <el-form-item label="备用DNS" prop="dns">
              <ip-input
                :ip="ipv6Form.dns2"
                @on-blur="ipv6Form.dns2 = arguments[0]"
              ></ip-input>
              <ip-input :ip="ipv6Form.dns2" @on-blur="ipv6Form.dns2 = arguments[0]"></ip-input>
            </el-form-item>
          </el-form>
@@ -239,12 +180,7 @@
        </div>
        <div class="wire" v-if="activePage == 'wire' && !inWireDetail">
          <div
            class="wire-bar"
            v-for="(item, i) in wireArr"
            :key="i"
            @click="checkWire(item)"
          >
          <div class="wire-bar" v-for="(item, i) in wireArr" :key="i" @click="checkWire(item)">
            <div class="name">{{ item.name }}</div>
            <div class="right">
@@ -254,55 +190,34 @@
                v-model="value"
                active-color="rgba(61, 104, 225, 1)"
                @change="switchChange"
              >
              </el-switch>
              ></el-switch>
            </div>
          </div>
        </div>
        <div class="wire-detail" v-if="activePage == 'wire' && inWireDetail">
            <div class="title">网络设置</div>
          <el-form
            :model="wireForm"
            :rules="wireFormRules"
            ref="wireForm"
            label-width="150px"
          >
     <el-form-item label="网络名称" prop="name">
          <div class="title">网络设置</div>
          <el-form :model="wireForm" :rules="wireFormRules" ref="wireForm" label-width="150px">
            <el-form-item label="网络名称" prop="name">
              <div class="wifi-name">{{ 12123 }}</div>
            </el-form-item>
            <el-form-item label="网卡" prop="name">
              <div class="wifi-name">{{ 12123 }}</div>
            </el-form-item>
            <el-form-item label="IP" prop="ip">
              <ip-input
                :ip="wireForm.ip"
                @on-blur="wireForm.ip = arguments[0]"
              ></ip-input>
              <ip-input :ip="wireForm.ip" @on-blur="wireForm.ip = arguments[0]"></ip-input>
            </el-form-item>
            <el-form-item label="子网掩码" prop="subMask">
              <ip-input
                :ip="wireForm.subMask"
                @on-blur="wireForm.subMask = arguments[0]"
              ></ip-input>
              <ip-input :ip="wireForm.subMask" @on-blur="wireForm.subMask = arguments[0]"></ip-input>
            </el-form-item>
            <el-form-item label="网关" prop="gateway">
              <ip-input
                :ip="ipv4Form.gateway"
                @on-blur="ipv4Form.gateway = arguments[0]"
              ></ip-input>
              <ip-input :ip="ipv4Form.gateway" @on-blur="ipv4Form.gateway = arguments[0]"></ip-input>
            </el-form-item>
            <el-form-item label="首选DNS" prop="dns">
              <ip-input
                :ip="ipv4Form.dns1"
                @on-blur="ipv4Form.dns1 = arguments[0]"
              ></ip-input>
              <ip-input :ip="ipv4Form.dns1" @on-blur="ipv4Form.dns1 = arguments[0]"></ip-input>
            </el-form-item>
            <el-form-item label="备用DNS" prop="dns">
              <ip-input
                :ip="ipv4Form.dns2"
                @on-blur="ipv4Form.dns2 = arguments[0]"
              ></ip-input>
              <ip-input :ip="ipv4Form.dns2" @on-blur="ipv4Form.dns2 = arguments[0]"></ip-input>
            </el-form-item>
          </el-form>
        </div>
@@ -328,12 +243,15 @@
  addESNode,
  getEsClusterInfo,
} from "@/api/clusterManage";
import cloudNode from "../components/CloudNode";
import ipInput from "@/components/subComponents/IPInput";
import { isIPv4 } from "@/scripts/validate";
import switchBar from "../components/switchBar";
export default {
  components: {
    ipInput,
    switchBar,
  },
  data() {
    const checkPwd = (rule, value, callback) => {
      if (!value) {
@@ -363,10 +281,10 @@
      wifiList: [{ name: "无线网络1" }, { name: "无线网络2" }],
      isOpenWifi: false,
      inWireDetail: false,
      wireForm:{
      wireForm: {
      },
      wireFormRules:{
      wireFormRules: {
      },
      activePage: "net",
@@ -392,19 +310,13 @@
      value: "",
    };
  },
  components: {
    cloudNode,
    ipInput,
    switchBar,
  },
  mounted() {},
  beforeDestroy() {},
  beforeDestroy() { },
  props: ["barName"],
  methods: {
    openRight(typ) {
      this.activePage = typ;
    },
    wifiControl(val) {},
    wifiControl(val) { },
    checkWifi() {
      this.inWifiDetail = true;
    },
@@ -432,7 +344,8 @@
    overflow: auto;
    box-sizing: border-box;
    flex-shrink: 0;
    padding: 10px;    border-right: 5px solid #f8f8f8;
    padding: 10px;
    border-right: 5px solid #f8f8f8;
    // background-color: lavender;
    .menu-item {
src/pages/systemSettings/views/generalSettings.vue
@@ -31,8 +31,7 @@
                  :min="0"
                  :max="100"
                  :show-tooltip="false"
                >
                </el-slider>
                ></el-slider>
              </div>
              <el-input-number
                v-model="alarmConf.min_video_len"
@@ -40,8 +39,7 @@
                :min="0"
                :max="100"
                size="mini"
              ></el-input-number>
              &nbsp;s
              ></el-input-number>&nbsp;s
            </div>
          </div>
          <div class="min-dur">
@@ -55,8 +53,7 @@
                  :min="0"
                  :max="100"
                  :show-tooltip="false"
                >
                </el-slider>
                ></el-slider>
              </div>
              <el-input-number
                v-model="alarmConf.max_video_len"
@@ -64,8 +61,7 @@
                :min="0"
                :max="100"
                size="mini"
              ></el-input-number>
              &nbsp;s
              ></el-input-number>&nbsp;s
            </div>
          </div>
@@ -82,34 +78,33 @@
          >
            <div class="left-part">
              <span class="icon iconfont">&#xe646;</span>
              <span class="name"> {{ item.name }}</span>
              <span class="name">{{ item.name }}</span>
            </div>
            <div class="btns">
              <span class="icon iconfont">&#xe646;</span>
              <span class="icon iconfont">&#xe646;</span>
            </div>
          </div>
        <div class="add-group">
  <el-upload
            class="upload-demo"
            drag
            action="https://jsonplaceholder.typicode.com/posts/"
            multiple
            v-show="showUpload"
          >
            <i class="el-icon-upload"></i>
            <div class="el-upload__text">
              事件声音文件拖到此处,或<em>点击上传</em> <br />
              仅支持mp3/wma等格式
          <div class="add-group">
            <el-upload
              class="upload-demo"
              drag
              action="https://jsonplaceholder.typicode.com/posts/"
              multiple
              v-show="showUpload"
            >
              <i class="el-icon-upload"></i>
              <div class="el-upload__text">
                事件声音文件拖到此处,或
                <em>点击上传</em>
                <br />仅支持mp3/wma等格式
              </div>
            </el-upload>
            <div v-show="!showUpload"></div>
            <div class="add-btn">
              <span class="icon iconfont" @click="showUpload=!showUpload">&#xe646;</span>
            </div>
          </el-upload>
          <div             v-show="!showUpload"
></div>
          <div class="add-btn">
            <span class="icon iconfont" @click="showUpload=!showUpload">&#xe646;</span>
          </div>
        </div>
        </div>
      </div>
    </div>
@@ -118,11 +113,7 @@
<script>
import { saveAlarmConfig } from "@/api/system";
import cloudNode from "../components/CloudNode";
import ipInput from "@/components/subComponents/IPInput";
import { isIPv4 } from "@/scripts/validate";
import switchBar from "../components/switchBar";
export default {
  data() {
@@ -155,7 +146,7 @@
      isOpenWifi: false,
      inWireDetail: false,
      wireForm: {},
      showUpload:false,
      showUpload: false,
      alarmConf: {
        min_video_len: 0,
        max_video_len: 0,
@@ -191,19 +182,14 @@
      value: "",
    };
  },
  components: {
    cloudNode,
    ipInput,
    switchBar,
  },
  mounted() {},
  beforeDestroy() {},
  mounted() { },
  beforeDestroy() { },
  props: ["barName"],
  methods: {
    openRight(typ) {
      this.activePage = typ;
    },
    wifiControl(val) {},
    wifiControl(val) { },
    checkWifi() {
      this.inWifiDetail = true;
    },
@@ -348,13 +334,12 @@
      .bar:hover {
        background-color: rgba(233, 233, 233, 1);
      }
      .add-group{
      margin-top: 170px;
    height: 235px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
      .add-group {
        margin-top: 170px;
        height: 235px;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
      }
      .upload-demo {
        .el-upload-dragger {
src/pages/systemSettings/views/keyboardLanguage.vue
@@ -46,10 +46,7 @@
  addESNode,
  getEsClusterInfo,
} from "@/api/clusterManage";
import cloudNode from "../components/CloudNode";
import ipInput from "@/components/subComponents/IPInput";
import { isIPv4 } from "@/scripts/validate";
import switchBar from "../components/switchBar";
export default {
  data() {
@@ -87,11 +84,11 @@
        { name: "英文" },
        { name: "繁体中文(香港)" },
      ],
        keyboardList: [
      keyboardList: [
        { name: "Hanyu Pinyin(algtr)" },
        { name: "ENG" },
      ],
      wireFormRules: {},
      activePage: "lang",
      rules: {
@@ -116,19 +113,14 @@
      value: "",
    };
  },
  components: {
    cloudNode,
    ipInput,
    switchBar,
  },
  mounted() {},
  beforeDestroy() {},
  mounted() { },
  beforeDestroy() { },
  props: ["barName"],
  methods: {
    openRight(typ) {
      this.activePage = typ;
    },
    wifiControl(val) {},
    wifiControl(val) { },
    checkWifi() {
      this.inWifiDetail = true;
    },
@@ -156,7 +148,8 @@
    overflow: auto;
    box-sizing: border-box;
    flex-shrink: 0;
    padding: 10px;    border-right: 5px solid #f8f8f8;
    padding: 10px;
    border-right: 5px solid #f8f8f8;
    // background-color: lavender;
    .menu-item {
vue.config.js
@@ -41,7 +41,7 @@
})
// const serverUrl = "http://58.118.225.79:41243" // 羊五
const serverUrl = "http://192.168.20.106:7009"
const serverUrl = "http://192.168.20.189:7003"
module.exports = {
  pages,