From 7366b0a279425cb6218bec8ba19774e5e8399b91 Mon Sep 17 00:00:00 2001
From: liuyg <liuyg@qq.com>
Date: Tue, 15 Mar 2022 14:34:37 +0800
Subject: [PATCH] +把DC拉出vue实例中,解决vue内存溢出问题
---
src/components/mobileLeftNav/index.vue | 829 +++++++++++++++++++++++++++++-----------------------------
1 files changed, 418 insertions(+), 411 deletions(-)
diff --git a/src/components/mobileLeftNav/index.vue b/src/components/mobileLeftNav/index.vue
index 5351c2c..b3d1f0c 100644
--- a/src/components/mobileLeftNav/index.vue
+++ b/src/components/mobileLeftNav/index.vue
@@ -1,292 +1,299 @@
<template>
- <div :class="['m-left-nav', seeRight ? '' : 'nones']" :style="[navStyle]">
- <!-- :style="[coutrolStyle]" -->
- <div class="m-left-coutrol" @click="changeIconHide">
- <i :class="icons"></i>
- </div>
- <ul>
- <li
- v-for="(item, index) in leftNavData"
- :key="index"
- @click="leftNavClick(item)"
- v-show="!item.notShow"
- >
- <img :style="[imgStyle]" :src="item.img" alt />
- <span>{{ item.label }}</span>
- </li>
- </ul>
+ <div :class="['m-left-nav', seeRight ? '' : 'nones']" :style="[navStyle]">
+ <!-- :style="[coutrolStyle]" -->
+ <div class="m-left-coutrol" @click="changeIconHide">
+ <i :class="icons"></i>
</div>
+ <ul>
+ <li
+ v-for="(item, index) in leftNavData"
+ :key="index"
+ @click="leftNavClick(item)"
+ v-show="!item.notShow"
+ >
+ <img :style="[imgStyle]" :src="item.img" alt />
+ <span>{{ item.label }}</span>
+ </li>
+ </ul>
+ </div>
</template>
<script>
-import { mapGetters } from 'vuex'
+import { mapGetters } from "vuex";
import {
- // getListdoor, //出入
- // getListaed, //AED
- // getListparking, //停车场
- getListarchitecture, // 全景
- getListarchitecture1, // 标签
- getListroad, // 道路
- getListcat // 出入-AED-停车场
-} from '@/api/mobile/piont/index'
-import { getListVideo } from '@/api/mobile/monitor/index'
+ // getListdoor, //出入
+ // getListaed, //AED
+ // getListparking, //停车场
+ getListarchitecture, // 全景
+ getListarchitecture1, // 标签
+ getListroad, // 道路
+ getListcat, // 出入-AED-停车场
+} from "@/api/mobile/piont/index";
+import { getListVideo } from "@/api/mobile/monitor/index";
+
+window.tagLayer = null;
+window.wayLayer = null;
+window.sceneLayer = null;
+window.videoLayer = null;
+window.activityLayer = null;
+window.aedLayer = null;
+window.parkLayer = null;
+window.comeLayer = null;
export default {
- name: 'mobileLeftNav',
- watch: {
- iconHide () {
- if (this.iconHide) {
- this.icons = 'el-icon-d-arrow-left'
- this.navStyle.right = '-51px'
- this.imgStyle.right = '6px'
- } else {
- this.icons = 'el-icon-d-arrow-right'
- this.navStyle.right = '0px'
- this.imgStyle.right = '0'
- }
- },
- seeRight () {
- if (this.seeRight) {
- this.leftNavData[0].flag = false
- this.leftNavData[0].img = this.leftNavData[0].checked
- this[this.leftNavData[0].layer].show = true
- } else {
- const lnd = this.leftNavData
- for (const k in lnd) {
- if (this[this.leftNavData[k].layer]._show) {
- // console.log(lnd[k].label, "所有开启");
- this.leftNavData[k].flag = false
- this.leftNavData[k].img = this.leftNavData[k].normal
- this[this.leftNavData[k].layer].show = false
- }
- }
- }
+ name: "mobileLeftNav",
+ watch: {
+ iconHide() {
+ if (this.iconHide) {
+ this.icons = "el-icon-d-arrow-left";
+ this.navStyle.right = "-51px";
+ this.imgStyle.right = "6px";
+ } else {
+ this.icons = "el-icon-d-arrow-right";
+ this.navStyle.right = "0px";
+ this.imgStyle.right = "0";
+ }
+ },
+ seeRight() {
+ if (this.seeRight) {
+ this.leftNavData[0].flag = false;
+ this.leftNavData[0].img = this.leftNavData[0].checked;
+ window[this.leftNavData[0].layer].show = true;
+ } else {
+ const lnd = this.leftNavData;
+ for (const k in lnd) {
+ if (window[this.leftNavData[k].layer]._show) {
+ // console.log(lnd[k].label, "所有开启");
+ this.leftNavData[k].flag = false;
+ this.leftNavData[k].img = this.leftNavData[k].normal;
+ window[this.leftNavData[k].layer].show = false;
+ }
}
+ }
},
- computed: {
- ...mapGetters(['iconHide', 'dimensionData', 'seeRight'])
+ },
+ computed: {
+ ...mapGetters(["iconHide", "dimensionData", "seeRight"]),
+ },
+ data() {
+ return {
+ icons: "el-icon-d-arrow-right",
+ navStyle: {
+ right: "0px",
+ },
+ imgStyle: {
+ right: "0",
+ },
+ leftNavData: [
+ {
+ flag: true,
+ label: "标签",
+ // img: "/img/leftnav/tag.png",
+ img: "/img/leftnav/tag-checked.png",
+ normal: "/img/leftnav/tag.png",
+ checked: "/img/leftnav/tag-checked.png",
+ layer: "tagLayer",
+ methods: getListarchitecture1,
+ imgSrc: "https://map.hit.edu.cn/images/tarrow_xq.png",
+ // imgSrc: "img/mobile/pink.png",
+ },
+ {
+ flag: false,
+ label: "道路",
+ img: "/img/leftnav/way.png",
+ normal: "/img/leftnav/way.png",
+ checked: "/img/leftnav/way-checked.png",
+ layer: "wayLayer",
+ methods: getListroad,
+ imgSrc: "img/mobile/green.png",
+ },
+ {
+ flag: false,
+ label: "实景",
+ img: "/img/leftnav/scene.png",
+ normal: "/img/leftnav/scene.png",
+ checked: "/img/leftnav/scene-checked.png",
+ layer: "sceneLayer",
+ methods: getListarchitecture,
+ imgSrc: "img/leftnav/map-panorama.png",
+ // imgSrc: "img/mobile/blue.png",
+ },
+ {
+ flag: false,
+ label: "监控",
+ img: "/img/leftnav/monitor.png",
+ normal: "/img/leftnav/monitor.png",
+ checked: "/img/leftnav/monitor-checked.png",
+ layer: "videoLayer",
+ methods: getListVideo,
+ imgSrc: "/img/leftnav/map-monitor.png",
+ // imgSrc: "img/mobile/blue.png",
+ },
+ // {
+ // flag: false,
+ // label: "活动",
+ // img: "/img/leftnav/activity.png",
+ // normal: "/img/leftnav/activity.png",
+ // checked: "/img/leftnav/activity-checked.png",
+ // layer: "activityLayer",
+ // methods: getListdoor,
+ // imgSrc: "img/mobile/brown.png",
+ // },
+ {
+ flag: false,
+ label: "AED",
+ img: "/img/leftnav/aed.png",
+ normal: "/img/leftnav/aed.png",
+ checked: "/img/leftnav/aed-checked.png",
+ layer: "aedLayer",
+ methods: getListcat,
+ type: 9,
+ imgSrc: "img/leftnav/map-aed.png",
+ // imgSrc: "img/mobile/pink.png",
+ notShow: true,
+ },
+ {
+ flag: false,
+ label: "停车",
+ img: "/img/leftnav/park.png",
+ normal: "/img/leftnav/park.png",
+ checked: "/img/leftnav/park-checked.png",
+ layer: "parkLayer",
+ methods: getListcat,
+ type: 11,
+ imgSrc: "https://map.hit.edu.cn/images/p-biao.png",
+ // imgSrc: "img/mobile/popcorn.png",
+ },
+ {
+ flag: false,
+ label: "出入",
+ img: "/img/leftnav/come.png",
+ normal: "/img/leftnav/come.png",
+ checked: "/img/leftnav/come-checked.png",
+ layer: "comeLayer",
+ methods: getListcat,
+ type: 12,
+ imgSrc: "img/leftnav/map-activity.png",
+ // imgSrc: "img/mobile/purple.png",
+ },
+ ],
+ // viewer: null,
+ // tagLayer: null,
+ // wayLayer: null,
+ // sceneLayer: null,
+ // videoLayer: null,
+ // activityLayer: null,
+ // aedLayer: null,
+ // parkLayer: null,
+ // comeLayer: null,
+ };
+ },
+ created() {},
+ mounted() {},
+ methods: {
+ changeIconHide() {
+ const isif = this.iconHide;
+ this.$store.commit("MSET_ICONHIDE", !isif);
},
- data () {
- return {
- icons: 'el-icon-d-arrow-right',
- navStyle: {
- right: '0px'
- },
- imgStyle: {
- right: '0'
- },
- leftNavData: [
- {
- flag: true,
- label: '标签',
- // img: "/img/leftnav/tag.png",
- img: '/img/leftnav/tag-checked.png',
- normal: '/img/leftnav/tag.png',
- checked: '/img/leftnav/tag-checked.png',
- layer: 'tagLayer',
- methods: getListarchitecture1,
- imgSrc: 'https://map.hit.edu.cn/images/tarrow_xq.png'
- // imgSrc: "img/mobile/pink.png",
- },
- {
- flag: false,
- label: '道路',
- img: '/img/leftnav/way.png',
- normal: '/img/leftnav/way.png',
- checked: '/img/leftnav/way-checked.png',
- layer: 'wayLayer',
- methods: getListroad,
- imgSrc: 'img/mobile/green.png'
- },
- {
- flag: false,
- label: '实景',
- img: '/img/leftnav/scene.png',
- normal: '/img/leftnav/scene.png',
- checked: '/img/leftnav/scene-checked.png',
- layer: 'sceneLayer',
- methods: getListarchitecture,
- imgSrc: 'img/leftnav/map-panorama.png'
- // imgSrc: "img/mobile/blue.png",
- },
- {
- flag: false,
- label: '监控',
- img: '/img/leftnav/monitor.png',
- normal: '/img/leftnav/monitor.png',
- checked: '/img/leftnav/monitor-checked.png',
- layer: 'videoLayer',
- methods: getListVideo,
- imgSrc: '/img/leftnav/map-monitor.png'
- // imgSrc: "img/mobile/blue.png",
- },
- // {
- // flag: false,
- // label: "活动",
- // img: "/img/leftnav/activity.png",
- // normal: "/img/leftnav/activity.png",
- // checked: "/img/leftnav/activity-checked.png",
- // layer: "activityLayer",
- // methods: getListdoor,
- // imgSrc: "img/mobile/brown.png",
- // },
- {
- flag: false,
- label: 'AED',
- img: '/img/leftnav/aed.png',
- normal: '/img/leftnav/aed.png',
- checked: '/img/leftnav/aed-checked.png',
- layer: 'aedLayer',
- methods: getListcat,
- type: 9,
- imgSrc: 'img/leftnav/map-aed.png',
- // imgSrc: "img/mobile/pink.png",
- notShow: true
- },
- {
- flag: false,
- label: '停车',
- img: '/img/leftnav/park.png',
- normal: '/img/leftnav/park.png',
- checked: '/img/leftnav/park-checked.png',
- layer: 'parkLayer',
- methods: getListcat,
- type: 11,
- imgSrc: 'https://map.hit.edu.cn/images/p-biao.png'
- // imgSrc: "img/mobile/popcorn.png",
- },
- {
- flag: false,
- label: '出入',
- img: '/img/leftnav/come.png',
- normal: '/img/leftnav/come.png',
- checked: '/img/leftnav/come-checked.png',
- layer: 'comeLayer',
- methods: getListcat,
- type: 12,
- imgSrc: 'img/leftnav/map-activity.png'
- // imgSrc: "img/mobile/purple.png",
- }
- ],
- viewer: null,
- tagLayer: null,
- wayLayer: null,
- sceneLayer: null,
- videoLayer: null,
- activityLayer: null,
- aedLayer: null,
- parkLayer: null,
- comeLayer: null
+ leftNavClick(item) {
+ // console.log(123132);
+ // 判断并关闭已开启标签
+ const lnd = this.leftNavData;
+ for (const k in lnd) {
+ // console.log(this[this.leftNavData[k].layer]);
+ if (lnd[k].label == item.label) {
+ // console.log(lnd[k].label, "当前点击");
+ continue;
}
+ if (window[this.leftNavData[k].layer]._show) {
+ // console.log(lnd[k].label, "所有开启");
+ this.leftNavData[k].flag = false;
+ this.leftNavData[k].img = this.leftNavData[k].normal;
+ window[this.leftNavData[k].layer].show = false;
+ }
+ }
+
+ item.flag = !item.flag;
+ if (item.flag == true) {
+ item.img = item.checked;
+ window[item.layer].show = true;
+ // console.log("飞入");
+ // this.flyTo(item);
+ this.$store.dispatch("closeMobileWindowsDom"); // 关闭弹窗
+ } else {
+ item.img = item.normal;
+ window[item.layer].show = false;
+ }
},
- created () {
- },
- mounted () { },
- methods: {
- changeIconHide () {
- const isif = this.iconHide
- this.$store.commit('MSET_ICONHIDE', !isif)
- },
- leftNavClick (item) {
- // console.log(123132);
- // 判断并关闭已开启标签
- const lnd = this.leftNavData
- for (const k in lnd) {
- // console.log(this[this.leftNavData[k].layer]);
- if (lnd[k].label == item.label) {
- // console.log(lnd[k].label, "当前点击");
- continue
- }
- if (this[this.leftNavData[k].layer]._show) {
- // console.log(lnd[k].label, "所有开启");
- this.leftNavData[k].flag = false
- this.leftNavData[k].img = this.leftNavData[k].normal
- this[this.leftNavData[k].layer].show = false
- }
- }
+ // flyTo(item) {
+ // const that = this;
+ // const posi = this[item.layer].positions[0];
+ // // console.log(posi);
+ // const lntLat =
+ // that.dimensionData.pitch == -45
+ // ? [posi.lng + 0.00917, posi.lat - 0.0188, 500]
+ // : [posi.lng + 0.01197, posi.lat - 0.00055, 500];
+ // // that.mviewer.camera.flyTo({
+ // // destination: Cesium.Cartesian3.fromDegrees(
+ // // lntLat[0],
+ // // lntLat[1],
+ // // lntLat[2]
+ // // ),
+ // // });
+ // // return;
+ // this.$store.dispatch("mapFlyTo", {
+ // // 飞入
+ // lntLat: lntLat,
+ // // lntLat: [posi.lng + 0.01187, posi.lat - 0.0308, 4000],
+ // // lntLat: [121.50492752204283, 31.21567802276832, 2530],
+ // heading: that.dimensionData.heading,
+ // pitch: that.dimensionData.pitch,
+ // roll: that.dimensionData.roll,
+ // noOpen: true,
+ // });
+ // },
+ initialize() {
+ var that = this;
+ global.viewer.scene.globe.depthTestAgainstTerrain = false;
+ window.tagLayer = new global.DC.HtmlLayer("tagLayer");
+ global.viewer.addLayer(tagLayer);
- item.flag = !item.flag
- if (item.flag == true) {
- item.img = item.checked
- this[item.layer].show = true
- // console.log("飞入");
- // this.flyTo(item);
- this.$store.dispatch('closeMobileWindowsDom') // 关闭弹窗
- } else {
- item.img = item.normal
- this[item.layer].show = false
- }
- },
- flyTo (item) {
- const that = this
- const posi = this[item.layer].positions[0]
- // console.log(posi);
- const lntLat =
- that.dimensionData.pitch == -45
- ? [posi.lng + 0.00917, posi.lat - 0.0188, 500]
- : [posi.lng + 0.01197, posi.lat - 0.00055, 500]
- // that.mviewer.camera.flyTo({
- // destination: Cesium.Cartesian3.fromDegrees(
- // lntLat[0],
- // lntLat[1],
- // lntLat[2]
- // ),
- // });
- // return;
- this.$store.dispatch('mapFlyTo', {
- // 飞入
- lntLat: lntLat,
- // lntLat: [posi.lng + 0.01187, posi.lat - 0.0308, 4000],
- // lntLat: [121.50492752204283, 31.21567802276832, 2530],
- heading: that.dimensionData.heading,
- pitch: that.dimensionData.pitch,
- roll: that.dimensionData.roll,
- noOpen: true
- })
- },
- initialize (viewer) {
- var that = this
- viewer.scene.globe.depthTestAgainstTerrain = false
- this.viewer = viewer
- this.tagLayer = new global.DC.HtmlLayer('tagLayer')
- viewer.addLayer(this.tagLayer)
+ window.wayLayer = new global.DC.HtmlLayer("wayLayer");
+ global.viewer.addLayer(wayLayer);
- this.wayLayer = new global.DC.HtmlLayer('wayLayer')
- viewer.addLayer(this.wayLayer)
+ // sceneLayer = new global.DC.VectorLayer("sceneLayer");
+ window.sceneLayer = new global.DC.HtmlLayer("sceneLayer");
+ global.viewer.addLayer(sceneLayer);
- // this.sceneLayer = new global.DC.VectorLayer("sceneLayer");
- this.sceneLayer = new global.DC.HtmlLayer('sceneLayer')
- viewer.addLayer(this.sceneLayer)
+ window.videoLayer = new global.DC.HtmlLayer("videoLayer");
+ global.viewer.addLayer(videoLayer);
- this.videoLayer = new global.DC.HtmlLayer('videoLayer')
- viewer.addLayer(this.videoLayer)
+ // activityLayer = new global.DC.VectorLayer("activityLayer");
+ window.activityLayer = new global.DC.HtmlLayer("activityLayer");
+ global.viewer.addLayer(activityLayer);
- // this.activityLayer = new global.DC.VectorLayer("activityLayer");
- this.activityLayer = new global.DC.HtmlLayer('activityLayer')
- viewer.addLayer(this.activityLayer)
+ // aedLayer = new global.DC.VectorLayer("aedLayer");
+ window.aedLayer = new global.DC.HtmlLayer("aedLayer");
+ global.viewer.addLayer(aedLayer);
- // this.aedLayer = new global.DC.VectorLayer("aedLayer");
- this.aedLayer = new global.DC.HtmlLayer('aedLayer')
- viewer.addLayer(this.aedLayer)
+ window.parkLayer = new global.DC.HtmlLayer("parkLayer");
+ global.viewer.addLayer(parkLayer);
- this.parkLayer = new global.DC.HtmlLayer('parkLayer')
- viewer.addLayer(this.parkLayer)
+ // comeLayer = new global.DC.VectorLayer("comeLayer");
+ window.comeLayer = new global.DC.HtmlLayer("comeLayer");
+ global.viewer.addLayer(comeLayer);
- // this.comeLayer = new global.DC.VectorLayer("comeLayer");
- this.comeLayer = new global.DC.HtmlLayer('comeLayer')
- viewer.addLayer(this.comeLayer)
-
- const ourNum = that.leftNavData.length
- for (let n = 0; n < ourNum; n++) {
- const ourD = this.leftNavData[n]
- const d = ourD.type ? { lifetype: ourD.type } : {}
- ourD.methods(d).then((res) => {
- let dom
- const data = res.data.data
- const position = that.changePoiton(data)
- const num = data.length
- for (let k = 0; k < num; k++) {
- if (ourD.label == '标签') {
- dom = `
+ const ourNum = that.leftNavData.length;
+ for (let n = 0; n < ourNum; n++) {
+ const ourD = this.leftNavData[n];
+ const d = ourD.type ? { lifetype: ourD.type } : {};
+ ourD.methods(d).then((res) => {
+ let dom;
+ const data = res.data.data;
+ const position = that.changePoiton(data);
+ const num = data.length;
+ for (let k = 0; k < num; k++) {
+ if (ourD.label == "标签") {
+ dom = `
<div class="tag-entitys-box">
<div class="tag-content">
${data[k].mechanismname}
@@ -295,12 +302,12 @@
<img src="${ourD.imgSrc}">
</div>
</div>
- `
- } else if (ourD.label == '道路') {
- // <div class="way-title" style="border: white 1px solid; padding-left: 2px;font-size: 12px; background: #0066ff; width: 12px;line-height: 13px; padding:2px 1px 2px 1px; color:white;">
- // ${data[k].mechanismname}
- // </div>
- dom = `
+ `;
+ } else if (ourD.label == "道路") {
+ // <div class="way-title" style="border: white 1px solid; padding-left: 2px;font-size: 12px; background: #0066ff; width: 12px;line-height: 13px; padding:2px 1px 2px 1px; color:white;">
+ // ${data[k].mechanismname}
+ // </div>
+ dom = `
<div class="way-entitys-box">
<div class="way-title" style="border: white 1px solid; padding-left: 2px;font-size: 12px; background: #0066ff; width: 12px;line-height: 13px; padding:2px 1px 2px 1px; color:white;">
${data[k].roadname}
@@ -309,19 +316,19 @@
<img src="https://map.hit.edu.cn/images/roadsign3.png">
</div>
</div>
- `
- } else if (ourD.label == '实景') {
- // <div class="way-title" style="border: white 1px solid; padding-left: 2px;font-size: 12px; background: #0066ff; width: 12px;line-height: 13px; padding:2px 1px 2px 1px; color:white;">
- // ${data[k].mechanismname}
- // </div>
- dom = `
+ `;
+ } else if (ourD.label == "实景") {
+ // <div class="way-title" style="border: white 1px solid; padding-left: 2px;font-size: 12px; background: #0066ff; width: 12px;line-height: 13px; padding:2px 1px 2px 1px; color:white;">
+ // ${data[k].mechanismname}
+ // </div>
+ dom = `
<div class="scene-entitys-box">
<div>${data[k].mechanismname}</div>
<img src="/img/leftnav/map-panorama.png" alt="">
</div>
- `
- } else if (ourD.label == 'AED') {
- dom = `
+ `;
+ } else if (ourD.label == "AED") {
+ dom = `
<div class="mobiletag-entitys-box">
<div class="tag-content">
${data[k].mechanismname}
@@ -330,9 +337,9 @@
<img src="${ourD.imgSrc}">
</div>
</div>
- `
- } else if (ourD.label == '停车') {
- dom = `
+ `;
+ } else if (ourD.label == "停车") {
+ dom = `
<div class="park-entitys-box">
<div class="park-title" alt="${data[k].mechanismname}">
</div>
@@ -345,9 +352,9 @@
</div>
</div>
</div>
- `
- } else if (ourD.label == '出入') {
- dom = `
+ `;
+ } else if (ourD.label == "出入") {
+ dom = `
<div class="mobiletag-entitys-box-pink">
<div class="tag-content">
${data[k].mechanismname}
@@ -356,141 +363,141 @@
<img src="${ourD.imgSrc}">
</div>
</div>
- `
- } else if (ourD.label == '监控') {
- dom = `
+ `;
+ } else if (ourD.label == "监控") {
+ dom = `
<div class="monitor-entitys-box">
<div>${data[k].mechanismname}</div>
<img class="monitor-entitys-box" src="/img/leftnav/map-monitor.png" alt="">
</div>
- `
- }
- const divIcon = new global.DC.DivIcon(position[k], dom)
- // 订阅事件
- divIcon.on(global.DC.MouseEventType.CLICK, (e) => {
- // console.log(data[k]);
- const d = {
- name:
- data[k].mechanismname ||
- data[k].roadname ||
- (ourD.label == '监控' ? '监控' : '无显示名字'),
- bgImg: data[k].tpurl,
- video: data[k].videourl || '',
- from: 'labels',
- introduce: data[k].introduce,
- panoramaurl: data[k].panoramaurl
- }
- // 定制化窗体
- that.openPopupS(
- e.position,
- [e.overlay._position._lng, e.overlay._position._lat],
- d
- )
- })
- that[that.leftNavData[n].layer].addOverlay(divIcon) // 加入图标
- }
- that[that.leftNavData[n].layer].positions = position
- if (that.leftNavData[n].layer == 'tagLayer') {
- // that.leftNavData[n].img = that.leftNavData[n].checked;
- } else {
- that[that.leftNavData[n].layer].show = false
- }
- })
+ `;
}
- // setTimeout(() => {
- // this.tagLayer.show = false;
- // }, 500);
- },
- changePoiton (data) {
- // console.log(data);
- const list = []
- const num = data.length
- for (let i = 0; i < num; i++) {
- list.push(new global.DC.Position(data[i].jd, data[i].wd, 0))
- }
- return list
- },
- mobileOpenImgs1 () {
- const imgsDom = document.getElementById('mobileBigImgs')
- imgsDom.click()
- },
- goOn1 () { },
- openPopupS (position, lntLat, query) {
- const that = this
- // 定制化窗体
- const d = {
- position,
- lntLat,
- query: { ...(query || {}), position, lntLat },
- useJWD: true // 仅使用经纬度
- }
- that.$store.dispatch('setMobileWindows', d)
- }
- }
-}
+ const divIcon = new global.DC.DivIcon(position[k], dom);
+ // 订阅事件
+ divIcon.on(global.DC.MouseEventType.CLICK, (e) => {
+ // console.log(data[k]);
+ const d = {
+ name:
+ data[k].mechanismname ||
+ data[k].roadname ||
+ (ourD.label == "监控" ? "监控" : "无显示名字"),
+ bgImg: data[k].tpurl,
+ video: data[k].videourl || "",
+ from: "labels",
+ introduce: data[k].introduce,
+ panoramaurl: data[k].panoramaurl,
+ };
+ // 定制化窗体
+ that.openPopupS(
+ e.position,
+ [e.overlay._position._lng, e.overlay._position._lat],
+ d
+ );
+ });
+ window[that.leftNavData[n].layer].addOverlay(divIcon); // 加入图标
+ }
+ window[that.leftNavData[n].layer].positions = position;
+ if (that.leftNavData[n].layer == "tagLayer") {
+ // that.leftNavData[n].img = that.leftNavData[n].checked;
+ } else {
+ window[that.leftNavData[n].layer].show = false;
+ }
+ });
+ }
+ // setTimeout(() => {
+ // this.tagLayer.show = false;
+ // }, 500);
+ },
+ changePoiton(data) {
+ // console.log(data);
+ const list = [];
+ const num = data.length;
+ for (let i = 0; i < num; i++) {
+ list.push(new global.DC.Position(data[i].jd, data[i].wd, 0));
+ }
+ return list;
+ },
+ mobileOpenImgs1() {
+ const imgsDom = document.getElementById("mobileBigImgs");
+ imgsDom.click();
+ },
+ goOn1() {},
+ openPopupS(position, lntLat, query) {
+ const that = this;
+ // 定制化窗体
+ const d = {
+ position,
+ lntLat,
+ query: { ...(query || {}), position, lntLat },
+ useJWD: true, // 仅使用经纬度
+ };
+ that.$store.dispatch("setMobileWindows", d);
+ },
+ },
+};
</script>
<style scoped lang="scss">
.m-left-nav {
- position: fixed;
- bottom: 30px;
- right: 0px;
- z-index: 200;
+ position: fixed;
+ bottom: 30px;
+ right: 0px;
+ z-index: 200;
+ background-color: #fff;
+ border-radius: 17px 0 0 17px;
+ transition: all 0.5s;
+ .m-left-coutrol {
+ position: absolute;
+ left: -24px;
+ top: 79px;
+ width: 25px;
+ height: 60px;
background-color: #fff;
border-radius: 17px 0 0 17px;
- transition: all 0.5s;
- .m-left-coutrol {
- position: absolute;
- left: -24px;
- top: 79px;
- width: 25px;
- height: 60px;
- background-color: #fff;
- border-radius: 17px 0 0 17px;
- display: flex;
- align-items: center;
- justify-content: center;
- }
- ul {
- position: relative;
- top: 3px;
- }
- li {
- margin-bottom: 6px;
- font-weight: 400;
- display: block;
- width: 80px;
- height: 30px;
- line-height: 30px;
- background-color: #fff;
- border-radius: 15px;
- text-align: center;
- font-size: 0;
- cursor: pointer;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ }
+ ul {
+ position: relative;
+ top: 3px;
+ }
+ li {
+ margin-bottom: 6px;
+ font-weight: 400;
+ display: block;
+ width: 80px;
+ height: 30px;
+ line-height: 30px;
+ background-color: #fff;
+ border-radius: 15px;
+ text-align: center;
+ font-size: 0;
+ cursor: pointer;
- img {
- position: relative;
- transition: all 0.5s;
- width: 24px;
- height: 24px;
- vertical-align: middle;
- margin-right: 10px;
- image-rendering: -moz-crisp-edges;
- image-rendering: -o-crisp-edges;
- image-rendering: -webkit-optimize-contrast;
- image-rendering: crisp-edges;
- -ms-interpolation-mode: nearest-neighbor;
- }
-
- span {
- display: inline-block;
- vertical-align: middle;
- font-size: 14px;
- color: #2f2f2f;
- }
+ img {
+ position: relative;
+ transition: all 0.5s;
+ width: 24px;
+ height: 24px;
+ vertical-align: middle;
+ margin-right: 10px;
+ image-rendering: -moz-crisp-edges;
+ image-rendering: -o-crisp-edges;
+ image-rendering: -webkit-optimize-contrast;
+ image-rendering: crisp-edges;
+ -ms-interpolation-mode: nearest-neighbor;
}
+
+ span {
+ display: inline-block;
+ vertical-align: middle;
+ font-size: 14px;
+ color: #2f2f2f;
+ }
+ }
}
.nones {
- display: none;
+ display: none;
}
</style>
--
Gitblit v1.9.3