zhaoxing
2022-08-22 74bb50ce93d0c9cd20a0b84f63db46f433a39e91
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
<template>
    <div class="app-slider">
        <div class="app-slider__logo" @click="toHome">
            <img :src="Logo" />
            <span v-if="!menuCollapse || browser.isMini">{{ app.name }}</span>
        </div>
 
        <div class="app-slider__menu">
            <cl-menu-slider />
        </div>
    </div>
</template>
 
<script lang="ts">
import { computed, defineComponent } from "vue";
import Logo from "/@/assets/icon/logo/silder-simple.png";
import { useCool } from "/@/cool";
 
export default defineComponent({
    setup() {
        const { store } = useCool();
 
        // 菜单是否展开
        const menuCollapse = computed<any>(() => store.getters.menuCollapse);
 
        // 浏览器信息
        const browser = computed<any>(() => store.getters.browser);
 
        // 应用信息
        const app = computed<any>(() => store.getters.app);
 
        // 跳转官网
        function toHome() {
            location.href = "https://cool-js.com/";
        }
 
        return {
            Logo,
            menuCollapse,
            browser,
            app,
            toHome
        };
    }
});
</script>
 
<style lang="scss" scoped>
.app-slider {
    height: 100%;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
    background-color: #2f3447;
 
    &__logo {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 80px;
        cursor: pointer;
 
        img {
            height: 30px;
            width: 30px;
        }
 
        span {
            color: #fff;
            font-weight: bold;
            font-size: 26px;
            margin-left: 10px;
            font-family: inherit;
            white-space: nowrap;
        }
    }
 
    &__menu {
        height: calc(100% - 80px);
    }
}
</style>