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">
@@ -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,7 +64,9 @@
</template>
<script>
let timer = null;
import users from "@/api/users";
import router from "@/router";
export default {
  data() {
    return {
@@ -73,37 +74,21 @@
    };
  },
  created() {
    // this.getMenuList();
    this.loadMenu();
  },
  methods: {
    loadMenu() {
      const info = JSON.parse(sessionStorage.getItem("user"));
      if (info && info.menus) {
        console.log("timer--", timer);
        window.clearInterval(timer);
        this.menuList = info.menus;
        console.log(this.menuList);
      } else {
        if (!timer) {
          timer = window.setInterval(() => {
            this.loadMenu();
          }, 1000);
          console.log("timer++", timer);
        }
      }
      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>
@@ -205,4 +190,4 @@
    }
  }
}
</style>
</style>