index.js 2.3 KB

12345
  1. 'use strict';(function(e,h){"object"===typeof exports&&"undefined"!==typeof module?module.exports=h():"function"===typeof define&&define.amd?define(h):(e=e||self,e.AMapLoader=h())})(this,function(){function e(a,d){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var b=Object.getOwnPropertySymbols(a);d&&(b=b.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable}));c.push.apply(c,b)}return c}function h(a){for(var d=1;d<arguments.length;d++){var c=null!=arguments[d]?arguments[d]:
  2. {};d%2?e(Object(c),!0).forEach(function(b){var d=c[b];b in a?Object.defineProperty(a,b,{value:d,enumerable:!0,configurable:!0,writable:!0}):a[b]=d}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(c)):e(Object(c)).forEach(function(b){Object.defineProperty(a,b,Object.getOwnPropertyDescriptor(c,b))})}return a}if(!window)throw Error("AMap JSAPI can only be used in Browser.");var f="notload",k={key:"",version:"1.4.15",plugins:[]},n=[],p=function(a){"function"==
  3. typeof a&&("loaded"==f?a(window.AMap):n.push(a))};return{load:function(a){return new Promise(function(d,c){if("notload"==f){var b=h({},k,{},a),g=b.key,e=b.version;b=b.plugins;if(g){window.AMap&&c("\u7981\u6b62\u591a\u79cdAPI\u52a0\u8f7d\u65b9\u5f0f\u6df7\u7528");k={key:g,version:e,plugins:b};f="loading";var q=document.body||document.head;window.___onAPILoaded=function(a){delete window.___onAPILoaded;a?(f="failed",c(a)):(f="loaded",d(window.AMap));for(;n.length;)n.splice(0,1)[0]()};var m=document.createElement("script");
  4. m.type="text/javascript";m.src="https://webapi.amap.com/maps?callback=___onAPILoaded&v="+e+"&key="+g+"&plugin="+b.join(",");m.onerror=function(a){f="failed";c(a)};q.appendChild(m)}else c("\u8bf7\u586b\u5199key")}else if(a.key&&a.key!==k.key)c("\u591a\u4e2a\u4e0d\u4e00\u81f4\u7684 key");else if(a.version&&a.version!==k.version)c("\u4e0d\u5141\u8bb8\u591a\u4e2a\u7248\u672c JSAPI \u6df7\u7528");else{"failed"==f&&c("\u524d\u6b21\u52a0\u8f7d\u5df2\u7ecf\u5931\u8d25");var l=[];if(a.plugins)for(g=0;g<a.plugins.length;g+=
  5. 1)-1==k.plugins.indexOf(a.plugins[g])&&l.push(a.plugins[g]);"loaded"==f?l.length?window.AMap.plugin(l,function(){d(window.AMap)}):d(window.AMap):"loading"==f&&p(function(){l.length?window.AMap.plugin(l,function(){d(window.AMap)}):d(window.AMap)})}})}}})