<!--
|
* @Author: shuishen 1109946754@qq.com
|
* @Date: 2024-11-28 17:02:08
|
* @LastEditors: shuishen 1109946754@qq.com
|
* @LastEditTime: 2024-12-02 17:45:30
|
* @FilePath: \bigScreen\src\pages\map\index.vue
|
* @Description:
|
*
|
* Copyright (c) 2024 by shuishen, All Rights Reserved.
|
-->
|
<template>
|
<div class="wrapper">
|
<map-container ref="MapContainer">
|
<template #content>
|
<div v-if="showContent" :class="[showSubLayout ? 'main-content-sub' : 'main-content']" id="MainContent">
|
<main-search></main-search>
|
<main-tool></main-tool>
|
|
<div class="w100 h100 relative">
|
<router-view></router-view>
|
</div>
|
</div>
|
</template>
|
</map-container>
|
</div>
|
</template>
|
|
<script setup>
|
import mainSearch from './components/mainSearch.vue'
|
import mainTool from './components/mainTool.vue'
|
|
import { useMap } from 'store/map'
|
import { useRouterStore } from 'store/router'
|
|
const store = useMap()
|
const storeRouter = useRouterStore()
|
const showContent = ref(false)
|
const showSubLayout = ref(false)
|
|
watch(
|
[
|
() => store.loadMap,
|
() => storeRouter.loadSub,
|
],
|
([newLoadMap, newLoadSub]) => {
|
showContent.value = newLoadMap
|
showSubLayout.value = newLoadSub
|
},
|
{ immediate: true } // 设置immediate为true以便在组件挂载时立即检查createB的值
|
)
|
</script>
|
|
<style lang="scss" scoped>
|
$bg-blue: rgba(24, 33, 92, 0.9);
|
|
.wrapper {
|
position: relative;
|
width: 100%;
|
height: 100%;
|
|
#MainContent,
|
#SingleMainContent {
|
position: absolute;
|
top: 0;
|
left: 0;
|
width: 100%;
|
height: 100%;
|
z-index: 99;
|
}
|
|
.main-content {
|
height: 1080px;
|
background: url(/images/header.png) no-repeat center / 100% 100%,
|
url(/images/pro-bg.png) no-repeat center / 100% 100%;
|
|
pointer-events: none;
|
|
&.single-page {
|
background: url(/images/header.png) no-repeat center / 100% 100%,
|
url(/images/pro-bg.png) no-repeat center / 100% 100%,
|
rgba(0, 0, 0, 1);
|
}
|
}
|
|
.main-content-sub {
|
height: 1080px;
|
background: url(/images/wrapper-box-bg.png) no-repeat center / 100% 100%,
|
url(/images/pro-bg.png) no-repeat center / 100% 100%;
|
|
pointer-events: none;
|
|
.main-header {
|
position: absolute;
|
top: 0;
|
left: 0;
|
width: 100%;
|
height: 40px;
|
pointer-events: auto;
|
|
.title {
|
position: absolute;
|
top: 0;
|
left: 0;
|
right: 0;
|
bottom: 0;
|
margin: auto;
|
width: 640px;
|
height: 40px;
|
font-size: 24px;
|
font-family: YouSheBiaoTiHei;
|
font-weight: 400;
|
color: #eff8fc;
|
line-height: 40px;
|
text-align: center;
|
letter-spacing: 8px;
|
font-weight: bolder;
|
background: linear-gradient(to bottom,
|
#e2eaf0 0%,
|
#aed1f1 100%);
|
-webkit-background-clip: text;
|
-webkit-text-fill-color: transparent;
|
// opacity: 0.89;
|
// text-shadow: 0px 4px 1px rgba(19, 80, 143, 0.66);
|
|
// background: linear-gradient(0deg, rgba(119, 186, 255, 0.45) 0%, rgba(233, 248, 255, 0.45) 73.3154296875%, rgba(255, 255, 255, 0.45) 100%);
|
// -webkit-background-clip: text;
|
// -webkit-text-fill-color: transparent;
|
}
|
|
|
.login-out {
|
position: absolute;
|
top: 10px;
|
right: 40px;
|
height: 36px;
|
color: #fff;
|
display: flex;
|
flex-direction: column;
|
align-items: center;
|
justify-content: space-between;
|
cursor: pointer;
|
|
.img {
|
width: 16px;
|
height: 16px;
|
}
|
|
span {
|
font-size: 13px;
|
}
|
}
|
}
|
|
.main-container {
|
position: absolute;
|
top: 40px;
|
left: 40px;
|
right: 40px;
|
bottom: 40px;
|
}
|
}
|
}
|
</style>
|