2 lines
6.5 KiB
JavaScript
2 lines
6.5 KiB
JavaScript
import{e5 as U,L as _,ak as L,f as y,K as k,aq as x,J as P,o as S,h as j,eA as C,eB as B,i as J}from"./index.c32990f8.js";import"./lodash.5757b941.js";var h={exports:{}};(function(M,I){(function(f,v){M.exports=v()})(U,function(){function f(e){var u=[];return e.AMapUI&&u.push(v(e.AMapUI)),e.Loca&&u.push(l(e.Loca)),Promise.all(u)}function v(e){return new Promise(function(u,o){var i=[];if(e.plugins)for(var t=0;t<e.plugins.length;t+=1)a.AMapUI.plugins.indexOf(e.plugins[t])==-1&&i.push(e.plugins[t]);if(p.AMapUI===n.failed)o("\u524D\u6B21\u8BF7\u6C42 AMapUI \u5931\u8D25");else if(p.AMapUI===n.notload){p.AMapUI=n.loading,a.AMapUI.version=e.version||a.AMapUI.version,t=a.AMapUI.version;var r=document.body||document.head,s=document.createElement("script");s.type="text/javascript",s.src="https://webapi.amap.com/ui/"+t+"/main.js",s.onerror=function(d){p.AMapUI=n.failed,o("\u8BF7\u6C42 AMapUI \u5931\u8D25")},s.onload=function(){if(p.AMapUI=n.loaded,i.length)window.AMapUI.loadUI(i,function(){for(var d=0,A=i.length;d<A;d++){var m=i[d].split("/").slice(-1)[0];window.AMapUI[m]=arguments[d]}for(u();c.AMapUI.length;)c.AMapUI.splice(0,1)[0]()});else for(u();c.AMapUI.length;)c.AMapUI.splice(0,1)[0]()},r.appendChild(s)}else p.AMapUI===n.loaded?e.version&&e.version!==a.AMapUI.version?o("\u4E0D\u5141\u8BB8\u591A\u4E2A\u7248\u672C AMapUI \u6DF7\u7528"):i.length?window.AMapUI.loadUI(i,function(){for(var d=0,A=i.length;d<A;d++){var m=i[d].split("/").slice(-1)[0];window.AMapUI[m]=arguments[d]}u()}):u():e.version&&e.version!==a.AMapUI.version?o("\u4E0D\u5141\u8BB8\u591A\u4E2A\u7248\u672C AMapUI \u6DF7\u7528"):c.AMapUI.push(function(d){d?o(d):i.length?window.AMapUI.loadUI(i,function(){for(var A=0,m=i.length;A<m;A++){var b=i[A].split("/").slice(-1)[0];window.AMapUI[b]=arguments[A]}u()}):u()})})}function l(e){return new Promise(function(u,o){if(p.Loca===n.failed)o("\u524D\u6B21\u8BF7\u6C42 Loca \u5931\u8D25");else if(p.Loca===n.notload){p.Loca=n.loading,a.Loca.version=e.version||a.Loca.version;var i=a.Loca.version,t=a.AMap.version.startsWith("2"),r=i.startsWith("2");if(t&&!r||!t&&r)o("JSAPI \u4E0E Loca \u7248\u672C\u4E0D\u5BF9\u5E94\uFF01\uFF01");else{t=a.key,r=document.body||document.head;var s=document.createElement("script");s.type="text/javascript",s.src="https://webapi.amap.com/loca?v="+i+"&key="+t,s.onerror=function(d){p.Loca=n.failed,o("\u8BF7\u6C42 AMapUI \u5931\u8D25")},s.onload=function(){for(p.Loca=n.loaded,u();c.Loca.length;)c.Loca.splice(0,1)[0]()},r.appendChild(s)}}else p.Loca===n.loaded?e.version&&e.version!==a.Loca.version?o("\u4E0D\u5141\u8BB8\u591A\u4E2A\u7248\u672C Loca \u6DF7\u7528"):u():e.version&&e.version!==a.Loca.version?o("\u4E0D\u5141\u8BB8\u591A\u4E2A\u7248\u672C Loca \u6DF7\u7528"):c.Loca.push(function(d){d?o(d):o()})})}if(!window)throw Error("AMap JSAPI can only be used in Browser.");var n;(function(e){e.notload="notload",e.loading="loading",e.loaded="loaded",e.failed="failed"})(n||(n={}));var a={key:"",AMap:{version:"1.4.15",plugins:[]},AMapUI:{version:"1.1",plugins:[]},Loca:{version:"1.3.2"}},p={AMap:n.notload,AMapUI:n.notload,Loca:n.notload},c={AMap:[],AMapUI:[],Loca:[]},g=[],w=function(e){typeof e=="function"&&(p.AMap===n.loaded?e(window.AMap):g.push(e))};return{load:function(e){return new Promise(function(u,o){if(p.AMap==n.failed)o("");else if(p.AMap==n.notload){var i=e.key,t=e.version,r=e.plugins;i?(window.AMap&&location.host!=="lbs.amap.com"&&o("\u7981\u6B62\u591A\u79CDAPI\u52A0\u8F7D\u65B9\u5F0F\u6DF7\u7528"),a.key=i,a.AMap.version=t||a.AMap.version,a.AMap.plugins=r||a.AMap.plugins,p.AMap=n.loading,t=document.body||document.head,window.___onAPILoaded=function(d){if(delete window.___onAPILoaded,d)p.AMap=n.failed,o(d);else for(p.AMap=n.loaded,f(e).then(function(){u(window.AMap)}).catch(o);g.length;)g.splice(0,1)[0]()},r=document.createElement("script"),r.type="text/javascript",r.src="https://webapi.amap.com/maps?callback=___onAPILoaded&v="+a.AMap.version+"&key="+i+"&plugin="+a.AMap.plugins.join(","),r.onerror=function(d){p.AMap=n.failed,o(d)},t.appendChild(r)):o("\u8BF7\u586B\u5199key")}else if(p.AMap==n.loaded)if(e.key&&e.key!==a.key)o("\u591A\u4E2A\u4E0D\u4E00\u81F4\u7684 key");else if(e.version&&e.version!==a.AMap.version)o("\u4E0D\u5141\u8BB8\u591A\u4E2A\u7248\u672C JSAPI \u6DF7\u7528");else{if(i=[],e.plugins)for(t=0;t<e.plugins.length;t+=1)a.AMap.plugins.indexOf(e.plugins[t])==-1&&i.push(e.plugins[t]);i.length?window.AMap.plugin(i,function(){f(e).then(function(){u(window.AMap)}).catch(o)}):f(e).then(function(){u(window.AMap)}).catch(o)}else if(e.key&&e.key!==a.key)o("\u591A\u4E2A\u4E0D\u4E00\u81F4\u7684 key");else if(e.version&&e.version!==a.AMap.version)o("\u4E0D\u5141\u8BB8\u591A\u4E2A\u7248\u672C JSAPI \u6DF7\u7528");else{var s=[];if(e.plugins)for(t=0;t<e.plugins.length;t+=1)a.AMap.plugins.indexOf(e.plugins[t])==-1&&s.push(e.plugins[t]);w(function(){s.length?window.AMap.plugin(s,function(){f(e).then(function(){u(window.AMap)}).catch(o)}):f(e).then(function(){u(window.AMap)}).catch(o)})}})},reset:function(){delete window.AMap,delete window.AMapUI,delete window.Loca,a={key:"",AMap:{version:"1.4.15",plugins:[]},AMapUI:{version:"1.1",plugins:[]},Loca:{version:"1.3.2"}},p={AMap:n.notload,AMapUI:n.notload,Loca:n.notload},c={AMap:[],AMapUI:[],Loca:[]}}}})})(h);var O=h.exports;const E=M=>(C("data-v-9a6c40ac"),M=M(),B(),M),V={class:"map-wrapper"},G=E(()=>J("div",{id:"mapcontainer"},null,-1)),q=[G],K={__name:"map",props:{modelValue:{type:Object,default(){return{}}}},emits:["update:modelValue"],setup(M,{emit:I}){const f=M;window._AMapSecurityConfig={securityJsCode:"c18396f675a1469441ec75a190c70ee7"};const v=L(null),l=y({get(){return f.modelValue},set(e){I("update:modelValue",e)}});k(l,e=>{e.longitude&&e.latitude&&x(()=>{w(e.longitude,e.latitude)})});let n,a,p;function c(){O.load({key:"98a4438e9a1e86bc285783f68656f7b5",version:"2.0"}).then(e=>{var u,o,i;n=e,v.value=new e.Map("mapcontainer",{center:[104.739928,29.484215],zoom:5}),v.value.on("click",g),(u=l==null?void 0:l.value)!=null&&u.longitude&&w((o=l==null?void 0:l.value)==null?void 0:o.longitude,(i=l==null?void 0:l.value)==null?void 0:i.latitude),e.plugin(["AMap.ToolBar","AMap.Scale","AMap.Geolocation","AMap.PlaceSearch","AMap.Geocoder"],()=>{p=new e.Geocoder({city:"\u5168\u56FD"})})})}P(()=>{c()});function g(e){const{lng:u,lat:o}=e.lnglat;w(u,o),p.getAddress([u,o],(i,t)=>{if(i==="complete"&&t.info==="OK"){const{addressComponent:r,formattedAddress:s}=t.regeocode;l.value={longitude:u,latitude:o,address:s}}})}function w(e,u){a&&a.setMap(null),a=new n.Marker({position:new n.LngLat(e,u),anchor:"bottom-center"}),v.value.add(a)}return(e,u)=>(S(),j("div",V,q))}};var z=_(K,[["__scopeId","data-v-9a6c40ac"]]);export{z as default};
|