zhanghua
2024-09-18 fd989d2af98e1ba50d82bbe9db6ce0a24a074bbf
src/layout/components/Navbar.vue
@@ -11,11 +11,7 @@
        <!-- <h3 style="position: fixed; top: 0; font-size: 16px; color: #5a5e66; " :style="'right:' + orgCss() ">{{ getOrgName() }}</h3> -->
        <div class="right-menu">
            <el-dropdown
                trigger="click"
                ref="eldrop"
                style="margin-right: 20px"
            >
      <el-dropdown trigger="click" ref="eldrop" style="margin-right: 20px">
                <div class="avatar-wrapper" style="font-size: 20px">
                    {{ selectStaff.org.name }}
                    <i class="el-icon-caret-bottom"></i>
@@ -32,7 +28,7 @@
            </el-dropdown>
            <el-dropdown class="avatar-container" trigger="click">
                <div class="avatar-wrapper">
                    {{ '您好,' + getUserName() }}
          {{ "您好," + getUserName() }}
                    <i class="el-icon-caret-bottom"></i>
                </div>
                <el-dropdown-menu slot="dropdown" class="user-dropdown">
@@ -46,53 +42,62 @@
</template>
<script>
import { mapGetters } from 'vuex'
import Breadcrumb from '@/components/Breadcrumb'
import Hamburger from '@/components/Hamburger'
import { mapGetters } from "vuex";
import Breadcrumb from "@/components/Breadcrumb";
import Hamburger from "@/components/Hamburger";
export default {
    inject: ['reload'], // 依赖注入
  inject: ["reload"], // 依赖注入
    data() {
        return {
            selectStaff: JSON.parse(localStorage.getItem("selectStaff")),
            staffs: JSON.parse(localStorage.getItem("staffs"))
        }
      selectStaff: { org: {} },
      staffs: [],
    };
    },
    components: {
        Breadcrumb,
        Hamburger
    Hamburger,
    },
    computed: {
        ...mapGetters([
            'sidebar',
            'avatar'
        ])
    ...mapGetters(["sidebar", "avatar"]),
    },
    methods: {
        changeStaff(item) {
            this.selectStaff = item
            localStorage.setItem("selectStaff", JSON.stringify(item))
      this.selectStaff = item;
      localStorage.setItem("selectStaff", JSON.stringify(item));
            // this.$router.go(0)
            this.reload()
      this.reload();
        },
        orgCss() {
            return JSON.parse(localStorage.getItem("user")).name.length * 20 + 100 + 'px';
      return (
        JSON.parse(localStorage.getItem("user")).name.length * 20 + 100 + "px"
      );
        },
        getOrgName() {
            return JSON.parse(localStorage.getItem("user")).staffs[0].org.name;
      return JSON.parse(localStorage.getItem("selectStaff")).org.name;
        },
        getUserName() {
            return JSON.parse(localStorage.getItem("user")).name;
        },
        toggleSideBar() {
            this.$store.dispatch('app/toggleSideBar')
      this.$store.dispatch("app/toggleSideBar");
        },
        async logout() {
            // await this.$store.dispatch('user/logout')
            this.$router.push(`/login`)
      this.$router.push(`/login`);
    },
  },
  created() {
    const selectStaff = JSON.parse(localStorage.getItem("selectStaff"));
    if (selectStaff) {
      this.selectStaff = selectStaff;
        }
    const staffs = JSON.parse(localStorage.getItem("staffs"));
    if (staffs) {
      this.staffs = staffs;
    }
}
  },
};
</script>
<style lang="scss" scoped>