shuishen
2024-01-19 4f8f5e5375b82a5ebc1f67f389b934b3b757f062
src/page/index/logo.vue
@@ -1,73 +1,89 @@
<!--
 * @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>