管道基础大数据平台系统开发-【前端】-新系統界面
liupengpeng
2023-02-10 1e850d13607fed0890f6d54583b835a181597010
src/components/navMenu.vue
@@ -51,16 +51,21 @@
          </div>
        </div>
        <div
          @click="switchLang"
          class="userLanguage"
        >
        <div class="userLanguage">
          <div class="userImage user2"></div>
          <div class="TextLanguage">
            <el-link
              @click="switchLang"
              :underline="false"
              class="elLink"
            >{{$t("common.language")}}</el-link>
          </div>
          <div class="TextLanguage">
            <el-link
              @click="themeChange"
              :underline="false"
              class="elLink"
            > 主题切换</el-link>
          </div>
        </div>
@@ -78,6 +83,7 @@
import colorChange from '../views/maintenance/colorChange.vue';
import { containsCoordinate } from 'ol/extent';
import Vue from 'vue';
import $ from 'jquery'
export default {
  name: 'navMenu',
  //import引入的组件需要注入到对象中才能使用
@@ -87,6 +93,7 @@
  },
  data() {
    return {
      themeColor: true,
      oriData: [], //原始树数据
      dirData: [], //el树数据
@@ -109,15 +116,57 @@
      changeSelectdiv: false,
      listMenu: [],
      showFlag: null,
      language: true
      language: true,
      nowPage: [
        {
          name: '/Archive',
          index: 3
        },
        {
          name: '/dataApplication',
          index: 3
        },
        {
          name: '/ExportMap',
          index: 3
        },
        {
          name: '/Synthesis',
          index: 3
        },
        {
          name: '/dataController',
          index: 4
        },
        {
          name: '/mochaitmo',
          index: 5
        }
      ]
    };
  },
  created() { },
  mounted() {
    this.$store.state.themeflag = false;
    $("#app").removeClass("Black_theme");
    this.getMenuTree();
    if (sessionStorage.getItem('changeliSelect')) {
      this.$set(this, 'changeliSelect', sessionStorage.getItem('changeliSelect'))
      // this.changeliSelect = sessionStorage.getItem('changeliSelect')
    }
  },
  computed: {},
  methods: {
    themeChange() {
      this.$store.state.themeflag = !this.$store.state.themeflag;
      if (this.$store.state.themeflag == true) {
        $("#app").addClass("Black_theme");
      } else {
        $("#app").removeClass("Black_theme");
      }
    },
    async getCookies() {
      var boolean = this.getTimeCookies();
      if (boolean != true) {
@@ -128,11 +177,11 @@
        const data = await getPerms();
        this.$store.state.permsEntity = data.result;
      }
      this.$store.state.uname = JSON.parse(
        localStorage.getItem('LFToken')
      ).uname;
        this.$store.state.unid = JSON.parse(
      this.$store.state.unid = JSON.parse(
        localStorage.getItem('LFToken')
      ).userid;
      this.$router.push('/');
@@ -151,7 +200,6 @@
    //鼠标移入菜单事件
    setMenuMove(index, item) {
      if (item.perms != null) {
        this.$router.push(item.url);
        if (this.showFlag != null) {
@@ -167,7 +215,12 @@
          this.showFlag = null;
        }
      }
      // debugger
      if (index === 4 || index === 5 || index === 6) {
        sessionStorage.removeItem('changeliSelect')
        this.$set(this, 'changeliSelect', null)
      }
      sessionStorage.setItem('changeSelectStyle', index)
      this.changeSelectStyle = index;
    },
    closeAllChildren() {
@@ -191,16 +244,23 @@
    },
    setLiClick(res, index) {
      setTimeout(() => {
        this.changeliSelect = res.cnName;
        sessionStorage.setItem('changeliSelect', res.cnName)
        if (res.url.indexOf('http') != -1) {
          if (location.href.indexOf('/WareInspection') == -1) {
            this.$store.reporturl = res.url;
            this.$router.push('/WareInspection');
          } else {
            this.$bus.$emit('changeNaveUrl', res.url);
          }
            sessionStorage.setItem('iframehttpurl', this.$store.reporturl)
            this.$router.push('/QualityInspection');
          // if (location.href.indexOf('/WareInspection') == -1) {
          //   this.$store.reporturl = res.url;
          //   this.$router.push('/WareInspection');
          // } else {
          //   this.$bus.$emit('changeNaveUrl', res.url);
          // }
        } else {
          this.$store.reporturl = null;
          sessionStorage.setItem('iframehttpurl', null)
          // sessionStorage.setItem('changeliSelect', null)
          this.$router.push(res.url);
          this.$store.commit('currentPerms', res.perms);
        }
@@ -246,7 +306,19 @@
          }
          this.listMenu.push(res[i]);
          this.changeSelectStyle = this.listMenu.length - 1;
          // this.changeSelectStyle = this.listMenu.length - 1;
          // this.changeSelectStyle = 0
          // const nowPage = this.nowPage
          // if (sessionStorage.getItem('routerName')) {
          //   for (let index = 0; index < nowPage.length; index++) {
          //     if (this.$route.path === nowPage[index].name) {
          //       this.$set(this, 'changeSelectStyle', nowPage[index].index)
          //     }
          //   }
          // } else {
          //   this.changeSelectStyle = this.listMenu.length - 1;
          // }
          this.changeSelectStyle = sessionStorage.getItem('changeSelectStyle')
          // var strartMneu = res[i].children[0];
          // this.$store.commit('currentPerms', strartMneu.perms);
          // this.changeliSelect = strartMneu.cnName;
@@ -307,6 +379,7 @@
        //语言换成zh
        this.lang = 'zh';
        this.language = true;
        this.$store.state.language = true;
        //菜单换为zh
        this.$store.commit('changeLang', 'zh');
        //i18换成zh
@@ -316,6 +389,7 @@
      else {
        this.lang = 'en';
        this.language = false;
        this.$store.state.language = false;
        this.$i18n.locale = this.lang;
        this.$store.commit('changeLang', 'en'); //传递点击的节点
      }
@@ -356,6 +430,5 @@
  },
};
</script>
<style lang="less" scoped>
</style>