| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 | <template>  <div :class="{'has-logo':showLogo}">    <logo v-if="showLogo"          :collapse="false" />    <el-scrollbar wrap-class="scrollbar-wrapper">      <el-menu :default-active="activeMenu"               :collapse='false'               :background-color="variables.menuBg"               :text-color="variables.menuText"               :unique-opened="true"               :active-text-color="variables.menuActiveText"               :collapse-transition="true"               mode="vertical">        <sidebar-item v-for="(route,index) in permission_routes"                      :key="index"                      :item="route"                      :base-path="route.path" />      </el-menu>    </el-scrollbar>  </div></template><script>import { mapGetters } from 'vuex'import Logo from './Logo'import SidebarItem from './SidebarItem'import variables from '@/styles/variables.scss'export default {  components: { SidebarItem, Logo },  // mounted () {  // },  computed: {    ...mapGetters([      'sidebar',      'permission_routes'    ]),    // routes () {    //   return this.$router.options.routes    // },    activeMenu () {      const route = this.$route      const { meta, path } = route      // if set path, the sidebar will highlight the path you set      // 设置高亮的位置         if (meta.activeMenu) {        return meta.activeMenu      }      // console.log(meta, path)      return path    },    showLogo () {      return this.$store.state.settings.sidebarLogo    },    variables () {      return variables    },    isCollapse () {      return false    }  }}</script><style lang="scss" scoped>.el-menu-item {  &:nth-last-child(1) {    padding-bottom: 20px;  }}</style>
 |