月球大数据地理空间分析展示平台-【前端】-月球2期前端
Surpriseplus
2023-08-22 e2c94dcb58b199eb57c164a67f1b038d401063d7
src/views/menus.vue
@@ -19,7 +19,6 @@
      </div>
    </div>
    <div class="menus_box">
      <div class="menu_Image_box">
        <div
          class="imgBox"
@@ -39,31 +38,53 @@
          />
        </div>
      </div>
    </div>
  </div>
  <div
    class="content_box"
    v-show="fullScreen"
  >
    <layer-manage
      @setCloseLayer="setCloseLayer"
      v-if="checkMenuFlag == 'l1'"
    > </layer-manage>
    <plotting v-show="checkMenuFlag == 'l2'"> </plotting>
    <baseMapSwitching v-show="checkMenuFlag == 'l5'"> </baseMapSwitching>
    <div
      v-show="checkMenuFlag == 'l1'"
      style="position: relative; display: flex"
    >
      <layer-manage @setCloseLayer="setCloseLayer"> </layer-manage>
    </div>
    <div v-show="checkMenuFlag == 'l2'">
      <plotting> </plotting>
    </div>
    <div v-show="checkMenuFlag == 'l5'">
      <baseMapSwitching> </baseMapSwitching>
    </div>
    <search v-if="thematicMapBtnState"> </search>
  </div>
  <top-btn
    v-show="fullScreen"
    v-if="thematicMapBtnState"
  ></top-btn>
  <thematic-map v-show="!thematicMapBtnState"></thematic-map>
  <div
    class="fullScreen_btn"
    v-show="!fullScreen"
    @click="screen"
  ></div>
  <div
    v-show="store.state.doubleMenu"
    class="setDobuleMap"
    @click="setDoubleScreenMap"
  >
    <Operation />
  </div>
  <div
    @setDobuleCloseLayer="setDobuleCloseLayer"
    v-show="store.state.doubleMap"
  >
    <double-layer></double-layer>
  </div>
</template>
<script lang="ts" setup>
@@ -75,6 +96,7 @@
  defineProps,
  defineEmits,
} from "vue";
import { Operation } from "@element-plus/icons-vue";
import menuData from "@/assets/js/Map/menuData";
import menuTool from "@/assets/js/Map/menuTool";
//顶部菜单
@@ -89,11 +111,22 @@
import plotting from "@/views/plotting/plotting.vue";
//底图切换
import baseMapSwitching from "@/views/baseMapSwitching/baseMapSwitching.vue";
//分屏菜单
import doubleLayer from "@/views/layer/doubleLayer.vue";
import store from "@/store";
const menuOptions = ref([]);
const checkMenuFlag = ref("");
let fullScreen = ref(true);
let thematicMapState = ref(true);
let thematicMapBtnState = ref(true);
const setDoubleScreenMap = () => {
  store.state.doubleMenu = false;
  store.state.doubleMap = true;
};
const setDobuleCloseLayer = () => {
  store.state.doubleMenu = true;
  store.state.doubleMap = false;
};
const setMenuClick = (res) => {
  if (res.id == "l6") {
    // fullScreen.value = !fullScreen.value;
@@ -150,7 +183,6 @@
      console.log(fullScreen.value);
    }
  }
  console.log(isFullScreen());
});
// 判断是否全屏
function isFullScreen() {
@@ -160,9 +192,8 @@
    document.webkitIsFullScreen
  );
}
onMounted(() => {
  menuOptions.value = menuData.leftMenu;
});
menuOptions.value = menuData.leftMenu;
onMounted(() => {});
</script>
<style lang="less" scoped>
.menus {
@@ -215,6 +246,18 @@
    }
  }
}
.setDobuleMap {
  position: absolute;
  top: 105px;
  right: calc(50% - 50px);
  z-index: 30;
  width: 20px;
  height: 20px;
  color: #d6e4ff;
  background: rgba(7, 8, 14, 0.8);
  box-shadow: inset 0px 10px 40px 10px rgba(38, 47, 71, 1);
  padding: 10px;
}
.menu_Image_box {
  height: 778px;
  width: 100%;