|
|
@@ -24,20 +24,6 @@
|
|
|
<app-icon icon="g-icon--minimize" @click="exitFullSreen" v-if="fullScreen" />
|
|
|
<app-icon icon="g-icon--maximize" @click="setFullSreen" v-else />
|
|
|
</div>
|
|
|
- <el-dropdown class="user-dropdown" trigger="click">
|
|
|
- <span class="user-dropdown__link">
|
|
|
- <img class="g-image--avatar" :title="accountName" />
|
|
|
- <span v-if="!isMobile">{{ accountName }}</span>
|
|
|
- <app-icon class="el-icon--right" icon="ArrowDown" />
|
|
|
- </span>
|
|
|
- <template #dropdown>
|
|
|
- <el-dropdown-menu>
|
|
|
- <!-- <el-dropdown-item icon="Key">修改密码</el-dropdown-item> -->
|
|
|
- <el-dropdown-item icon="SwitchButton"
|
|
|
- @click="eventBus.$emit('LogoutNotify')">退出登录</el-dropdown-item>
|
|
|
- </el-dropdown-menu>
|
|
|
- </template>
|
|
|
- </el-dropdown>
|
|
|
</div>
|
|
|
<component :is="componentMap.get(componentId)" v-bind="{ dataList }" @closed="closeComponent" v-if="componentId" />
|
|
|
</div>
|
|
|
@@ -46,10 +32,9 @@
|
|
|
<script lang="ts" setup>
|
|
|
import { ref, onMounted, defineAsyncComponent } from 'vue'
|
|
|
import { useRouter } from 'vue-router'
|
|
|
-import { loginStore, globalStore } from '@/stores'
|
|
|
+import { globalStore } from '@/stores'
|
|
|
import { useComponent } from '@/hooks/component'
|
|
|
import { useNotice } from '@/business/notice'
|
|
|
-import eventBus from '@/services/bus'
|
|
|
import AppIcon from '@pc/components/base/icon/index.vue'
|
|
|
|
|
|
const componentMap = new Map<string, unknown>([
|
|
|
@@ -61,7 +46,6 @@ const componentMap = new Map<string, unknown>([
|
|
|
const { componentId, openComponent, closeComponent } = useComponent()
|
|
|
const { dataList, unreadList, getNoticeList } = useNotice()
|
|
|
const { isMobile } = globalStore.$mapState()
|
|
|
-const { accountName } = loginStore.$mapGetters()
|
|
|
const router = useRouter()
|
|
|
const fullScreen = ref(false)
|
|
|
|