1 line
15 KiB
JSON
1 line
15 KiB
JSON
{"remainingRequest":"G:\\project\\smart-power-ui\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!G:\\project\\smart-power-ui\\src\\components\\Amap\\components\\bigscLocation\\index.vue?vue&type=script&lang=js&","dependencies":[{"path":"G:\\project\\smart-power-ui\\src\\components\\Amap\\components\\bigscLocation\\index.vue","mtime":1620974736364},{"path":"G:\\project\\smart-power-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1591751767036},{"path":"G:\\project\\smart-power-ui\\node_modules\\babel-loader\\lib\\index.js","mtime":1610504270305},{"path":"G:\\project\\smart-power-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1591751767036},{"path":"G:\\project\\smart-power-ui\\node_modules\\vue-loader\\lib\\index.js","mtime":1610504274351}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KCmltcG9ydCBBTWFwIGZyb20gIkFNYXAiOwppbXBvcnQgbWFya2VySWNvbiBmcm9tICJAL2Fzc2V0cy9pbWFnZXMvYmlnL21hcF9tYXJrZXItaWNvbi5wbmciOwpleHBvcnQgZGVmYXVsdCB7CiAgbmFtZTogIlNob3BMY2F0aW9uIiwKICBwcm9wczogewogICAgbWFwQ2VudGVyOiB7CiAgICAgIHR5cGU6IE9iamVjdCwKICAgICAgZGVmYXVsdDogewogICAgICAgIGxuZzogMTE2LjM5NzQyOCwKICAgICAgICBsYXQ6IDM5LjkwOTIzLAogICAgICAgIGFkZHJlc3M6ICIiCiAgICAgIH0KICAgIH0sCiAgICB6b29tOiB7CiAgICAgIHR5cGU6IFtTdHJpbmcsIE51bWJlcl0sCiAgICAgIGRlZmF1bHQ6IDEwCiAgICB9LAogICAgZHJhZ2dhYmxlOiB7CiAgICAgIHR5cGU6IEJvb2xlYW4sCiAgICAgIGRlZmF1bHQ6IGZhbHNlCiAgICB9LAogICAgcHJvamVjdExpc3Q6IHsKICAgICAgdHlwZTogQXJyYXksCiAgICAgIGRlZmF1bHQ6IFtdCiAgICB9CiAgfSwKICBkYXRhKCkgewogICAgcmV0dXJuIHsKICAgICAgYU1hcDogbnVsbCwKICAgICAgcG9pbnRSZXN1bHQ6IHsKICAgICAgICBsbmc6IDExOS4yNzUyNTQsCiAgICAgICAgbGF0OiAyNi4wMjg5MjgsCiAgICAgICAgYWRkcmVzczogIiIKICAgICAgfSwKICAgICAgdGhlbWU6ICI2YzMxYTU0N2ViOTM4N2NhZWZjMDEzYjc4MDllOWQyMSIsCiAgICAgIGluZm9XaW5kb3c6IG51bGwKICAgIH07CiAgfSwKICBtb3VudGVkKCkgewogICAgdGhpcy5pbml0TWFwKCk7CiAgfSwKICB3YXRjaDogewogICAgcHJvamVjdExpc3Q6IHsKICAgICAgaGFuZGxlcjogZnVuY3Rpb24obGlzdCwgb2xkVmFsKSB7CiAgICAgICAgLy8g5Yib5bu66K6+5aSH5a6a5L2N55qE54K5CiAgICAgICAgaWYgKHRoaXMuYU1hcCkgewogICAgICAgICAgdGhpcy5hTWFwLmNsZWFyTWFwKCk7CiAgICAgICAgfQogICAgICAgIHRoaXMuY3JlYXRlTWFya2VyKCk7CiAgICAgIH0sCiAgICAgIGRlZXA6IHRydWUKICAgIH0KICB9LAogIG1ldGhvZHM6IHsKICAgIG92ZXJ2aWV3KCkgewogICAgICBpZih0aGlzLmFNYXApIHsKICAgICAgICB0aGlzLmFNYXAuc2V0Rml0VmlldygpOwogICAgICB9CiAgICB9LAogICAgaW5pdE1hcCgpIHsKICAgICAgdGhpcy5wb2ludFJlc3VsdFsibG5nIl0gPSB0aGlzLm1hcENlbnRlci5sbmc7CiAgICAgIHRoaXMucG9pbnRSZXN1bHRbImxhdCJdID0gdGhpcy5tYXBDZW50ZXIubGF0OwogICAgICB0aGlzLmFNYXAgPSBuZXcgQU1hcC5NYXAoImNvbnRhaW5lciIsIHsKICAgICAgICBjZW50ZXI6IFt0aGlzLm1hcENlbnRlci5sbmcsIHRoaXMubWFwQ2VudGVyLmxhdF0sCiAgICAgICAgcmVzaXplRW5hYmxlOiB0cnVlLAogICAgICAgIHpvb206IHRoaXMuem9vbSwKICAgICAgICBtYXBTdHlsZTogImFtYXA6Ly9zdHlsZXMvIiArIHRoaXMudGhlbWUKICAgICAgfSk7CiAgICAgIHRoaXMuY3JlYXRlTWFya2VyKCk7CiAgICB9LAogICAgLy8g5Yib5bu656qX5Y+j5a+56LGhCiAgICBjcmVhdGVJbmZvV2luZG93TygpIHsKICAgICAgLy/pvKDmoIfngrnlh7ttYXJrZXLlvLnlh7roh6rlrprkuYnnmoTkv6Hmga/nqpfkvZMKICAgICAgdGhpcy5pbmZvV2luZG93ID0gbmV3IEFNYXAuSW5mb1dpbmRvdyh7CiAgICAgICAgaXNDdXN0b206IHRydWUsIC8v5L2/55So6Ieq5a6a5LmJ56qX5L2TCiAgICAgICAgY29udGVudDogJycsCiAgICAgICAgb2Zmc2V0OiBuZXcgQU1hcC5QaXhlbCgtMywgLTkpCiAgICAgIH0pOwogICAgfSwKICAgIC8vIOWcsOWbvuagh+eCuSDngrnlh7vkuovku7YKICAgIG1hcmtlckNsaWNrKGUpIHsKICAgICAgaWYgKCF0aGlzLmluZm9XaW5kb3cpIHsKICAgICAgICB0aGlzLmNyZWF0ZUluZm9XaW5kb3dPKCk7CiAgICAgIH0KICAgICAgdGhpcy5pbmZvV2luZG93LnNldENvbnRlbnQoZS50YXJnZXQuY29udGVudCk7CiAgICAgIHRoaXMuaW5mb1dpbmRvdy5vcGVuKHRoaXMuYU1hcCwgZS50YXJnZXQuZ2V0UG9zaXRpb24oKSk7CiAgICB9LAogICAgLy8g5Yib5bu66K6+5aSH5a6a5L2N55qE54K5CiAgICBjcmVhdGVNYXJrZXIoKSB7CiAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5wcm9qZWN0TGlzdC5sZW5ndGg7IGkrKykgewogICAgICAgIGlmICh0aGlzLnByb2plY3RMaXN0W2ldLnByb2plY3RMYXQgJiYgdGhpcy5wcm9qZWN0TGlzdFtpXS5wcm9qZWN0TG5nKSB7CiAgICAgICAgICB2YXIgbWFya2VyID0gbmV3IEFNYXAuTWFya2VyKHsKICAgICAgICAgICAgcG9zaXRpb246IFsKICAgICAgICAgICAgICB0aGlzLnByb2plY3RMaXN0W2ldLnByb2plY3RMbmcsCiAgICAgICAgICAgICAgdGhpcy5wcm9qZWN0TGlzdFtpXS5wcm9qZWN0TGF0CiAgICAgICAgICAgIF0sCiAgICAgICAgICAgIG1hcDogdGhpcy5hTWFwLAogICAgICAgICAgICBpY29uOiBtYXJrZXJJY29uLAogICAgICAgICAgICBvZmZzZXQ6IG5ldyBBTWFwLlBpeGVsKC0xMywgLTMwKSwKICAgICAgICAgICAgLy8g6K6+572u5piv5ZCm5Y+v5Lul5ouW5ou9CiAgICAgICAgICAgIGRyYWdnYWJsZTogZmFsc2UsCiAgICAgICAgICAgIC8vIGN1cnNvcjogIm1vdmUiLAogICAgICAgICAgICAvLyDorr7nva7mi5bmi73mlYjmnpwKICAgICAgICAgICAgcmFpc2VPbkRyYWc6IGZhbHNlLAogICAgICAgICAgICBjbGlja2FibGU6IHRydWUKICAgICAgICAgIH0pOwogICAgICAgICAgdmFyIGNvbnRlbnQgPSBbXTsKICAgICAgICAgIGNvbnRlbnQucHVzaCgKICAgICAgICAgICAgYDxkaXYgY2xhc3M9ImluZm8tYmxvY2siPgogICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImluZm8tbGFibGUiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idDEiPumhueebrjxzcGFuIGNsYXNzPSJ0dCI+Ojwvc3Bhbj48L2Rpdj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InQxIj7lnLDlnYA8c3BhbiBjbGFzcz0idHQiPjo8L3NwYW4+PC9kaXY+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW5mby12YWx1ZSI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ2MSI+JHt0aGlzLnByb2plY3RMaXN0W2ldLnByb2plY3ROYW1lfTwvZGl2PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idjEiPgogICAgICAgICAgICAgICAgPG1hcnF1ZWUgc3R5bGU9Im1hcmdpbjogMDsiIGJlaGF2aW9yPSJhbHRlcm5hdGUiIHNjcm9sbGFtb3VudD0iMSIgd2lkdGg9IjEwMCUiPjxzcGFuPiR7dGhpcy5wcm9qZWN0TGlzdFtpXS5wcm9qZWN0QWRkcmVzc308L3NwYW4+PC9tYXJxdWVlPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PmAKICAgICAgICAgICk7CiAgICAgICAgICB2YXIgX3RoaXMgPSB0aGlzOwogICAgICAgICAgbWFya2VyLmNvbnRlbnQgPSBfdGhpcy5jcmVhdGVJbmZvV2luZG93KGNvbnRlbnQuam9pbigiPGJyLz4iKSkKICAgICAgICAgIG1hcmtlci5vbigiY2xpY2siLCBfdGhpcy5tYXJrZXJDbGljayk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHRoaXMuYU1hcC5zZXRGaXRWaWV3KCk7CiAgICB9LAogICAgLy8g5a6e5L6L5YyW5L+h5oGv56qX5L2TCiAgICBjcmVhdGVJbmZvV2luZG93KGNvbnRlbnQpIHsKICAgICAgdmFyIGluZm8gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKICAgICAgaW5mby5jbGFzc05hbWUgPSAiY3VzdG9tLWluZm8gaW5wdXQtY2FyZCBjb250ZW50LXdpbmRvdy1jYXJkIjsKCiAgICAgIC8vIOWumuS5ieS4remDqOWGheWuuQogICAgICB2YXIgbWlkZGxlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CiAgICAgIG1pZGRsZS5jbGFzc05hbWUgPSAiaW5mby1taWRkbGUiOwogICAgICBtaWRkbGUuc3R5bGUuYmFja2dyb3VuZENvbG9yID0gIiNmZjJmNjAwMCI7CiAgICAgIG1pZGRsZS5pbm5lckhUTUwgPSBjb250ZW50OwogICAgICBpbmZvLmFwcGVuZENoaWxkKG1pZGRsZSk7CgogICAgICByZXR1cm4gaW5mbzsKICAgIH0sCiAgICAvL+WFs+mXreS/oeaBr+eql+S9kwogICAgY2xvc2VJbmZvV2luZG93KCkgewogICAgICB0aGlzLmFNYXAuY2xlYXJJbmZvV2luZG93KCk7CiAgICB9LAogICAgZ2V0UG9zaXRpb25CeUxvbkxhdHMobG5nLCBsYXQpIHsKICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgLy8gY29uc29sZS5sb2coIue7j+W6pu+8miIrbG5nKyLnuqzluqYiK2xhdCk7CiAgICAgIHZhciBsbmdsYXRYWSA9IFtsbmcsIGxhdF07IC8vIOWcsOWbvuS4iuaJgOagh+eCueeahOWdkOaghwogICAgICBBTWFwLnNlcnZpY2UoIkFNYXAuR2VvY29kZXIiLCBmdW5jdGlvbigpIHsKICAgICAgICAvLyDlm57osIPlh73mlbAKICAgICAgICB2YXIgZ2VvY29kZXIgPSBuZXcgQU1hcC5HZW9jb2Rlcih7fSk7CiAgICAgICAgZ2VvY29kZXIuZ2V0QWRkcmVzcyhsbmdsYXRYWSwgZnVuY3Rpb24oc3RhdHVzLCByZXN1bHQpIHsKICAgICAgICAgIGlmIChzdGF0dXMgPT09ICJjb21wbGV0ZSIgJiYgcmVzdWx0LmluZm8gPT09ICJPSyIpIHsKICAgICAgICAgICAgLy8gY29uc29sZS5sb2cocmVzdWx0LnJlZ2VvY29kZS5mb3JtYXR0ZWRBZGRyZXNzKTsKICAgICAgICAgICAgdmFyIGFkZHJlc3MgPSByZXN1bHQucmVnZW9jb2RlLmZvcm1hdHRlZEFkZHJlc3M7CiAgICAgICAgICAgIF90aGlzLnBvaW50UmVzdWx0LmFkZHJlc3MgPSBhZGRyZXNzOwogICAgICAgICAgfQogICAgICAgICAgX3RoaXMuJGVtaXQoIm1hcEV2ZW50IiwgX3RoaXMucG9pbnRSZXN1bHQpOwogICAgICAgIH0pOwogICAgICB9KTsKICAgIH0sCiAgICBzaG93SW5mb091dChlKSB7CiAgICAgIC8vIOW9k+eCueagh+azqOWkseWOu+m8oOagh+eEpueCueeahOaXtuWAmeWwseaJp+ihjHJldHVybiDmlbDmja4KICAgICAgdGhpcy5nZXRQb3NpdGlvbkJ5TG9uTGF0cygKICAgICAgICB0aGlzLnBvaW50UmVzdWx0WyJsbmciXSwKICAgICAgICB0aGlzLnBvaW50UmVzdWx0WyJsYXQiXQogICAgICApOwogICAgICAvLyB0aGlzLiRlbWl0KCIiKQogICAgfSwKICAgIHNob3dJbmZvTShlKSB7CiAgICAgIHRoaXMucG9pbnRSZXN1bHRbImxhdCJdID0gZS5sbmdsYXQubGF0OwogICAgICB0aGlzLnBvaW50UmVzdWx0WyJsbmciXSA9IGUubG5nbGF0LmxuZzsKICAgIH0KICB9Cn07Cg=="},{"version":3,"sources":["index.vue"],"names":[],"mappings":";;;;;;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"index.vue","sourceRoot":"src/components/Amap/components/bigscLocation","sourcesContent":["<template>\n <div class=\"amap-bigsc-location\">\n <div id=\"container\" style=\"width:100%; height:100%\"></div>\n </div>\n</template>\n<script>\nimport AMap from \"AMap\";\nimport markerIcon from \"@/assets/images/big/map_marker-icon.png\";\nexport default {\n name: \"ShopLcation\",\n props: {\n mapCenter: {\n type: Object,\n default: {\n lng: 116.397428,\n lat: 39.90923,\n address: \"\"\n }\n },\n zoom: {\n type: [String, Number],\n default: 10\n },\n draggable: {\n type: Boolean,\n default: false\n },\n projectList: {\n type: Array,\n default: []\n }\n },\n data() {\n return {\n aMap: null,\n pointResult: {\n lng: 119.275254,\n lat: 26.028928,\n address: \"\"\n },\n theme: \"6c31a547eb9387caefc013b7809e9d21\",\n infoWindow: null\n };\n },\n mounted() {\n this.initMap();\n },\n watch: {\n projectList: {\n handler: function(list, oldVal) {\n // 创建设备定位的点\n if (this.aMap) {\n this.aMap.clearMap();\n }\n this.createMarker();\n },\n deep: true\n }\n },\n methods: {\n overview() {\n if(this.aMap) {\n this.aMap.setFitView();\n }\n },\n initMap() {\n this.pointResult[\"lng\"] = this.mapCenter.lng;\n this.pointResult[\"lat\"] = this.mapCenter.lat;\n this.aMap = new AMap.Map(\"container\", {\n center: [this.mapCenter.lng, this.mapCenter.lat],\n resizeEnable: true,\n zoom: this.zoom,\n mapStyle: \"amap://styles/\" + this.theme\n });\n this.createMarker();\n },\n // 创建窗口对象\n createInfoWindowO() {\n //鼠标点击marker弹出自定义的信息窗体\n this.infoWindow = new AMap.InfoWindow({\n isCustom: true, //使用自定义窗体\n content: '',\n offset: new AMap.Pixel(-3, -9)\n });\n },\n // 地图标点 点击事件\n markerClick(e) {\n if (!this.infoWindow) {\n this.createInfoWindowO();\n }\n this.infoWindow.setContent(e.target.content);\n this.infoWindow.open(this.aMap, e.target.getPosition());\n },\n // 创建设备定位的点\n createMarker() {\n for (var i = 0; i < this.projectList.length; i++) {\n if (this.projectList[i].projectLat && this.projectList[i].projectLng) {\n var marker = new AMap.Marker({\n position: [\n this.projectList[i].projectLng,\n this.projectList[i].projectLat\n ],\n map: this.aMap,\n icon: markerIcon,\n offset: new AMap.Pixel(-13, -30),\n // 设置是否可以拖拽\n draggable: false,\n // cursor: \"move\",\n // 设置拖拽效果\n raiseOnDrag: false,\n clickable: true\n });\n var content = [];\n content.push(\n `<div class=\"info-block\">\n <div class=\"info-lable\">\n <div class=\"t1\">项目<span class=\"tt\">:</span></div>\n <div class=\"t1\">地址<span class=\"tt\">:</span></div>\n </div>\n <div class=\"info-value\">\n <div class=\"v1\">${this.projectList[i].projectName}</div>\n <div class=\"v1\">\n <marquee style=\"margin: 0;\" behavior=\"alternate\" scrollamount=\"1\" width=\"100%\"><span>${this.projectList[i].projectAddress}</span></marquee>\n </div>\n </div>\n </div>`\n );\n var _this = this;\n marker.content = _this.createInfoWindow(content.join(\"<br/>\"))\n marker.on(\"click\", _this.markerClick);\n }\n }\n this.aMap.setFitView();\n },\n // 实例化信息窗体\n createInfoWindow(content) {\n var info = document.createElement(\"div\");\n info.className = \"custom-info input-card content-window-card\";\n\n // 定义中部内容\n var middle = document.createElement(\"div\");\n middle.className = \"info-middle\";\n middle.style.backgroundColor = \"#ff2f6000\";\n middle.innerHTML = content;\n info.appendChild(middle);\n\n return info;\n },\n //关闭信息窗体\n closeInfoWindow() {\n this.aMap.clearInfoWindow();\n },\n getPositionByLonLats(lng, lat) {\n var _this = this;\n // console.log(\"经度:\"+lng+\"纬度\"+lat);\n var lnglatXY = [lng, lat]; // 地图上所标点的坐标\n AMap.service(\"AMap.Geocoder\", function() {\n // 回调函数\n var geocoder = new AMap.Geocoder({});\n geocoder.getAddress(lnglatXY, function(status, result) {\n if (status === \"complete\" && result.info === \"OK\") {\n // console.log(result.regeocode.formattedAddress);\n var address = result.regeocode.formattedAddress;\n _this.pointResult.address = address;\n }\n _this.$emit(\"mapEvent\", _this.pointResult);\n });\n });\n },\n showInfoOut(e) {\n // 当点标注失去鼠标焦点的时候就执行return 数据\n this.getPositionByLonLats(\n this.pointResult[\"lng\"],\n this.pointResult[\"lat\"]\n );\n // this.$emit(\"\")\n },\n showInfoM(e) {\n this.pointResult[\"lat\"] = e.lnglat.lat;\n this.pointResult[\"lng\"] = e.lnglat.lng;\n }\n }\n};\n</script>\n<style lang=\"scss\">\n.amap-bigsc-location {\n width: 100%;\n height: 100%;\n .amap-marker:first-child .amap-icon img {\n width: 25px;\n height: 34px;\n }\n div.info-middle {\n padding: 20px;\n // background: #ff2f6000 !important;\n }\n div.info-block {\n width: 198px;\n height: 76px;\n background-image: url(\"../../../../assets/images/big/mapbj_v1.png\");\n background-size: cover;\n display: flex;\n padding: 12px;\n font-size: 14px;\n font-family: \"Microsoft YaHei\";\n font-weight: 400;\n padding-left: 5px;\n }\n div.info-lable {\n color: #07beff;\n margin-right: 8px;\n margin-left: 8px;\n letter-spacing: 7px;\n width: 50px;\n }\n div.info-value {\n width: calc(100% - 60px);\n text-overflow: ellipsis;\n overflow: hidden;\n }\n span.tt {\n margin-left: -6px;\n }\n div.input-card {\n background-color: #ff2f6000;\n box-shadow: 0;\n }\n}\n</style>\n"]}]} |