Files
fini-ui/src/views/IPO/components/IpoHeader.vue
T

196 lines
4.6 KiB
Vue
Raw Normal View History

2023-04-12 14:40:19 +08:00
<template>
<div class="headerWrap">
<el-drawer v-model="drawer" size="80%" direction="ltr" :show-close="false" :before-close="handleDrawer"
2023-04-16 20:51:53 +08:00
style="background-color: #1C3F56;" :with-header="false">
2023-04-19 17:41:10 +08:00
<Drawer :drawer = "drawer" @childfn="fn"/>
2023-04-12 14:40:19 +08:00
</el-drawer>
<div class="hleft">
<div class="left-1">
2023-04-19 17:41:10 +08:00
<img src="@/assets/1x/1x/source5.png" alt="menu" @click="openDrawer" class="menu">
<div class="title">{{ $t(i18n.global.t('dashboard.IPOReferenceData')) }}</div>
2023-04-12 14:40:19 +08:00
</div>
2023-04-16 20:51:53 +08:00
2023-04-12 14:40:19 +08:00
<div class="search" @click="handlesearch">
<img src="@/assets/1x/1x/source2.png" alt="找不到图片">
</div>
2023-04-13 18:03:12 +08:00
<div class="langWrap">
2023-04-16 20:51:53 +08:00
<img src="@/assets/1x/source1.png" @click="handleShowLang" class="second">
<Lang ref="lang" class="lang" />
</div>
2023-04-12 14:40:19 +08:00
</div>
<!-- <div class="downLoad">
<div class="report">{{ $t(i18n.global.t('ipo.report')) }}</div>
<img src="@/assets/1x/source3.png" alt="找不到图片">
</div> -->
</div>
</template>
<script lang="ts">
export default {
name: "IPOHeader",
};
</script>
<script lang="ts" setup>
import i18n from '@/locales'
2023-04-16 20:51:53 +08:00
import { getCurrentInstance, onMounted, onUnmounted } from 'vue'
2023-04-12 14:40:19 +08:00
import Drawer from '@/views/login/modelComponents/Drawer.vue'
import { ref } from 'vue'
2023-04-13 18:03:12 +08:00
import Lang from "@/views/login/components/Lang.vue";
const lang = ref()
2023-04-12 14:40:19 +08:00
const drawer = ref(false)
const { proxy } = (getCurrentInstance() as any)
2023-04-16 20:51:53 +08:00
const handlesearch = () => {
2023-04-12 14:40:19 +08:00
proxy.$router.push("/home")
}
const handleDrawer = (done: () => void) => {
done();
}
const openDrawer = () => {
drawer.value = true;
}
2023-04-16 20:51:53 +08:00
const handleShowLang = (e: any) => {
console.log(1111)
e.stopPropagation()
2023-04-13 18:03:12 +08:00
lang.value.showLang = !lang.value.showLang
}
onMounted(() => {
document.documentElement.onclick = function () {
if (!lang.value.showLang) return
lang.value.showLang = false
}
})
2023-04-19 17:41:10 +08:00
function fn(data:any){
drawer.value = data
}
2023-04-13 18:03:12 +08:00
onUnmounted(() => {
document.documentElement.onclick = null
})
2023-04-12 14:40:19 +08:00
</script>
<style lang="scss" scoped>
2023-04-17 16:01:46 +08:00
@media screen and (max-width: 768px){
.headerWrap{
2023-04-18 17:04:41 +08:00
margin-left: 18px;
2023-04-17 16:01:46 +08:00
}
}
2023-04-16 20:51:53 +08:00
.langWrap {
2023-04-13 18:03:12 +08:00
// position: absolute;
// // top:-20px;
// left: 260px;
// display: flex;
// align-items: end;
position: relative;
margin-left: 15px;
2023-04-16 20:51:53 +08:00
@media screen and (max-width: 768px) {
display: none;
}
.second {
width: 32px;
height: 36px;
margin-top: 4px;
&:hover {
transform: scale(1.2);
2023-04-13 18:03:12 +08:00
}
}
2023-04-16 20:51:53 +08:00
}
.lang {
position: absolute;
top: 50px;
left: -50px;
}
2023-04-12 14:40:19 +08:00
.headerWrap {
display: flex;
justify-content: space-between;
2023-04-16 20:51:53 +08:00
@media screen and (max-width: 768px) {
.left-1 {
2023-04-12 14:40:19 +08:00
display: flex;
justify-content: space-between;
width: 80vw;
}
}
2023-04-16 20:51:53 +08:00
2023-04-12 14:40:19 +08:00
.hleft {
display: flex;
justify-content: space-between;
width: fit-content;
2023-04-16 20:51:53 +08:00
position: relative;
.menu {
display: none;
@media screen and (max-width: 768px) {
display: block;
2023-04-19 17:41:10 +08:00
vertical-align: middle;
width: 25px;
height: 20px;
2023-04-16 20:51:53 +08:00
}
}
2023-04-12 14:40:19 +08:00
.title {
color: #2B4A60;
font-size: 45px;
2023-04-16 20:51:53 +08:00
font-weight: bolder;
@media screen and (max-width: 768px) {
2023-04-19 17:41:10 +08:00
font-size: 20px;
2023-04-18 17:04:41 +08:00
transform: translateX(-60px);
2023-04-19 17:41:10 +08:00
display: inline;
2023-04-12 14:40:19 +08:00
}
}
2023-04-16 20:51:53 +08:00
2023-04-12 14:40:19 +08:00
.search {
margin-top: 5px;
background-color: #fff;
width: 30px;
height: 30px;
border-radius: 50%;
display: flex;
justify-content: center;
align-items: center;
margin-left: 15px;
transform: translateY(5px);
cursor: pointer;
img {
width: 18px;
height: 18px;
}
2023-04-16 20:51:53 +08:00
@media screen and (max-width: 768px) {
2023-04-12 14:40:19 +08:00
transform: translateY(-0.5vh);
}
}
}
.downLoad {
display: flex;
height: 30px;
align-items: center;
2023-04-16 20:51:53 +08:00
2023-04-12 14:40:19 +08:00
.report {
font-size: 28px;
color: #1C3F56;
margin-right: 10px;
}
img {
width: 20px;
margin-top: 2px;
&:hover {
transform: scale(1.2);
}
}
}
}
</style>