Oliver
2022-12-22 73b48dd59a2d47b365b87784371c4ef57dde659b
src/views/layout/components/Menu/index.vue
@@ -2,7 +2,7 @@
  <div>
    <!-- 侧边导航栏 -->
    <el-aside width="200px">
      <h2 class="siderbar-title">遂昌执法平台</h2>
      <h2 class="siderbar-title" @click="toHome()">遂昌执法平台</h2>
      <el-scrollbar>
        <!-- 路由 -->
        <el-menu router class="el-menu-vertical" :default-active="$route.path">
@@ -18,11 +18,11 @@
              </span>
              <span class="fisrtSpan">{{ menu.title }}</span>
            </template>
            <template v-if="menu.children.length > 0">
              <template v-for="secondMenu in menu.children">
            <template v-if="menu.menuVoArrayList.length > 0">
              <template v-for="secondMenu in menu.menuVoArrayList">
                <el-submenu
                  :key="secondMenu.id"
                  v-if="secondMenu.children.length > 0"
                  v-if="secondMenu.menuVoArrayList.length > 0"
                  :index="
                    secondMenu.url ? secondMenu.url : secondMenu.id.toString()
                  "
@@ -32,7 +32,7 @@
                    <span class="secondSpan">{{ secondMenu.title }}</span>
                  </template>
                  <el-menu-item
                    v-for="thirdMenu in secondMenu.children"
                    v-for="thirdMenu in secondMenu.menuVoArrayList"
                    :key="thirdMenu.id"
                    :index="`${thirdMenu.id}`"
                    :route="{ name: thirdMenu.url }"
@@ -42,7 +42,6 @@
                <el-menu-item
                  v-else
                  :key="secondMenu.id"
                  :index="`${secondMenu.id}`"
                  :route="{ name: secondMenu.url }"
                  >{{ secondMenu.title }}</el-menu-item
@@ -65,6 +64,9 @@
</template>
<script>
import users from "@/api/users";
import router from "@/router";
export default {
  data() {
    return {
@@ -72,33 +74,21 @@
    };
  },
  created() {
    // this.getMenuList();
    this.loadMenu();
  },
  methods: {
    loadMenu() {
      const info = JSON.parse(sessionStorage.getItem("user"));
      var timer;
      if (info && info.menus) {
        clearTimeout(timer);
        this.menuList = info.menus;
        console.log(info.menus);
      } else {
        timer = setInterval(() => {
          this.loadMenu();
        }, 1000);
      }
      const userName = sessionStorage.getItem('name');
      users.getMenu({ name: userName })
          .then(res => {
            this.menuList = res.menus;
            sessionStorage.setItem('user', JSON.stringify(res));
          })
          .catch(err => this.$message.error(err))
    },
    // 获取菜单列表
    getMenuList() {
      let arr;
      this.$axios({
        method: "get",
        url: "sccg/system/portal/menu/search_myself",
      }).then((res) => {
        console.log(res);
      });
    },
    toHome(){
      router.push("/home")
    }
  },
};
</script>
@@ -200,4 +190,4 @@
    }
  }
}
</style>
</style>