loadBMap.js 619 B

123456789101112131415161718192021
  1. /**
  2. * 动态加载百度地图api函数
  3. * @param {String} ak 百度地图AK,必传
  4. */
  5. export default function loadBMap(ak) {
  6. return new Promise(function(resolve, reject) {
  7. if (typeof window.BMap !== 'undefined') {
  8. resolve(window.BMap);
  9. return true;
  10. }
  11. window.onBMapCallback = function() {
  12. resolve(window.BMap);
  13. };
  14. let script = document.createElement('script');
  15. script.type = 'text/javascript';
  16. script.src =
  17. 'http://api.map.baidu.com/api?v=3.0&ak=' + ak + '&callback=onBMapCallback';
  18. script.onerror = reject;
  19. document.head.appendChild(script);
  20. });
  21. }