1. 程式人生 > >node 非同步載入百度地圖

node 非同步載入百度地圖

export default {
    init: function (){
        const AK = "AFNGWoP3YTGstfhT6BQUcsm5xGodgTIv";
        const BMap_URL = "https://api.map.baidu.com/api?v=3.0&ak="+ AK +"&s=1&callback=onBMapCallback";
        return new Promise((resolve, reject) => {
            // 如果已載入直接返回
            if(typeof BMap !== "undefined") {
                resolve(BMap);
                return true;
            }
            // 百度地圖非同步載入回撥處理
            window.onBMapCallback = function () {
                // console.log("百度地圖指令碼初始化成功...");
                resolve(BMap);
            };

            // 插入script指令碼
            let scriptNode = document.createElement("script");
            scriptNode.setAttribute("type", "text/javascript");
            scriptNode.setAttribute("src", BMap_URL);
            document.body.appendChild(scriptNode);
        });
    }
}

 

            MP.init().then((BMap)=>{
                this.init()
            });