| | |
| | | <!-- |
| | | * @Author: shuishen 1109946754@qq.com |
| | | * @Date: 2023-12-14 17:10:00 |
| | | * @LastEditors: shuishen 1109946754@qq.com |
| | | * @LastEditTime: 2024-01-19 15:47:47 |
| | | * @FilePath: \jczz_web\src\page\index\logo.vue |
| | | * @Description: |
| | | * |
| | | * Copyright (c) 2024 by shuishen, All Rights Reserved. |
| | | --> |
| | | <template> |
| | | <div class="avue-logo"> |
| | | <transition name="fade"> |
| | | <span v-if="keyCollapse" |
| | | class="avue-logo_subtitle" |
| | | key="0"> |
| | | {{website.logo}} |
| | | </span> |
| | | </transition> |
| | | <transition-group name="fade"> |
| | | <template v-if="!keyCollapse"> |
| | | <span class="avue-logo_title" |
| | | key="1">{{website.indexTitle}} </span> |
| | | </template> |
| | | </transition-group> |
| | | </div> |
| | | <div class="avue-logo"> |
| | | <transition name="fade"> |
| | | <span v-if="keyCollapse" class="avue-logo_subtitle" key="0"> |
| | | {{ website.logo }} |
| | | </span> |
| | | </transition> |
| | | <transition-group name="fade"> |
| | | <template v-if="!keyCollapse"> |
| | | <span class="avue-logo_title" key="1">{{ webTitle }} </span> |
| | | </template> |
| | | </transition-group> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import { mapGetters } from "vuex"; |
| | | import { getStore } from "@/util/store" |
| | | import { mapGetters } from "vuex" |
| | | |
| | | export default { |
| | | name: "logo", |
| | | data() { |
| | | return {}; |
| | | }, |
| | | created() {}, |
| | | computed: { |
| | | ...mapGetters(["website", "keyCollapse"]) |
| | | }, |
| | | methods: {} |
| | | }; |
| | | name: "logo", |
| | | data () { |
| | | return { |
| | | webTitle: getStore({ name: "webTitle" }) |
| | | } |
| | | }, |
| | | created () { }, |
| | | computed: { |
| | | ...mapGetters(["website", "keyCollapse"]) |
| | | }, |
| | | methods: {} |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss"> |
| | | .fade-leave-active { |
| | | transition: opacity 0.2s; |
| | | transition: opacity 0.2s; |
| | | } |
| | | |
| | | .fade-enter-active { |
| | | transition: opacity 2.5s; |
| | | transition: opacity 2.5s; |
| | | } |
| | | |
| | | .fade-enter, |
| | | .fade-leave-to { |
| | | opacity: 0; |
| | | opacity: 0; |
| | | } |
| | | |
| | | .avue-logo { |
| | | position: fixed; |
| | | top: 0; |
| | | left: 0; |
| | | width: 240px; |
| | | height: 64px; |
| | | line-height: 64px; |
| | | background-color: #20222a; |
| | | font-size: 20px; |
| | | overflow: hidden; |
| | | box-sizing: border-box; |
| | | box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.15); |
| | | color: rgba(255, 255, 255, 0.8); |
| | | z-index: 1024; |
| | | &_title { |
| | | display: block; |
| | | text-align: center; |
| | | font-weight: 300; |
| | | position: fixed; |
| | | top: 0; |
| | | left: 0; |
| | | width: 240px; |
| | | height: 64px; |
| | | line-height: 64px; |
| | | background-color: #20222a; |
| | | font-size: 20px; |
| | | } |
| | | &_subtitle { |
| | | display: block; |
| | | text-align: center; |
| | | font-size: 18px; |
| | | font-weight: bold; |
| | | color: #fff; |
| | | } |
| | | overflow: hidden; |
| | | box-sizing: border-box; |
| | | box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.15); |
| | | color: rgba(255, 255, 255, 0.8); |
| | | z-index: 1024; |
| | | |
| | | &_title { |
| | | display: block; |
| | | text-align: center; |
| | | font-weight: 300; |
| | | font-size: 20px; |
| | | } |
| | | |
| | | &_subtitle { |
| | | display: block; |
| | | text-align: center; |
| | | font-size: 18px; |
| | | font-weight: bold; |
| | | color: #fff; |
| | | } |
| | | } |
| | | </style> |