123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 |
- <script setup lang="ts">
- import { useRouter } from 'vue-router';
- import Clock from '../small/Clock.vue';
- const emit = defineEmits(['back']);
- const props = defineProps({
- showBack: {
- type: Boolean,
- default: false,
- },
- absolute: {
- type: Boolean,
- default: false,
- },
- customBack: {
- type: Boolean,
- default: false,
- }
- });
- const router = useRouter();
- function handleBack() {
- if (props.customBack) {
- emit('back');
- } else {
- router.back();
- }
- }
- </script>
- <template>
- <header :class="{ 'absolute': absolute }">
- <div class="logo">
- <div v-if="showBack" class="back main-any-button" role="button" tabindex="0" @click="handleBack()">
- <img src="@/assets/images/IconBack.png" >
- 返回上一级
- </div>
- <img class="logo-img" src="@/assets/images/Logo.png" alt="">
- <img class="title-img" src="@/assets/images/TitleText.png" alt="">
- </div>
- <div class="extra">
- <Clock format="YYYY年MM月dd日 HH:mm" :flush-time="1000 * 30" />
- </div>
- </header>
- </template>
- <style lang="scss" scoped>
- header {
- display: flex;
- flex-direction: row;
- justify-content: space-between;
- align-items: center;
- padding: 10px 20px;
- background: linear-gradient(360deg,
- var(--color-header1) 0%,
- var(--color-header2) 80%,
- var(--color-header3) 100%
- );
- padding: 1.5% 5%;
- &.absolute {
- position: absolute;
- top: 0;
- left: 0;
- right: 0;
- z-index: 100;
- }
- .back {
- display: flex;
- flex-direction: row;
- align-items: center;
- font-size: 0.8rem;
- color: var(--color-text-light);
- margin-right: 30px;
- img {
- margin-right: 10px;
- width: 50px;
- }
- }
- .logo {
- display: flex;
- flex-direction: row;
- align-items: center;
- .logo-img {
- width: 40px;
- }
- .title-img {
- width: 120px;
- margin-left: 15px;
- }
- }
- .extra {
- color: var(--color-text-light);
- font-size: 0.8rem;
- }
- }
- </style>
|