当前位置: 代码网 > it编程>编程语言>Javascript > vue中实现展示与隐藏侧边栏功能

vue中实现展示与隐藏侧边栏功能

2024年09月07日 Javascript 我要评论
vue展示与隐藏侧边栏功能navbar.vue<span @click="closesidebar" class="sidebar"> <svg-icon :icon-clas

vue展示与隐藏侧边栏功能

navbar.vue

<span @click="closesidebar" class="sidebar">
    <svg-icon :icon-class="'sidebar'" :class="{ changecollapse: iscollapse }"/>
</span>
closesidebar() {
    this.$store.commit("user/close_sidebar");
},

stor中user.js

const user = {
    namespaced: true,
    state: {
        opened: localstorage.getitem('sidebarstatus') ? !!+localstorage.getitem('sidebarstatus') : true,
    },
    mutations: {
        close_sidebar: (state) => {
            state.opened = !state.opened
        if (state.opened) {
            localstorage.setitem('sidebarstatus', 1)
        } else {
            localstorage.setitem('sidebarstatus', 0)
        }

        },
    },
    getters: {
        opened: state => state.opened
    }
}

export default user

sidebar.vue

<el-menu
       :default-active="defaultactive"
       class="el-menu-vertical-demo"
       background-color="#3c4a78"
       :active-text-color="iscollapse ? '#fff' : '#3c4a78'"
       text-color="#f6f8ff"
       unique-opened
       :collapse="iscollapse"
       :collapse-transition="false"
   >
</el-menu>
import { mapgetters } from "vuex";
computed: {
    ...mapgetters("user", ["opened"]),
    iscollapse() {
      return !this.opened;
    }
},

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com