Vue下使用百度地圖的簡易方法,分享給大家,具體如下:
最近的項目里面,需要用到將具體地址轉換成百度坐標系的經緯度,需求比較簡單,所以就沒有采用GitHub里面的百度Vue插件。
廢話不說,直接貼出代碼:
引入:在需要用到百度地圖的組件里面直接引入
export default { methods: { loadBMapScript () { let script = document.createElement('script'); script.src = 'http://api.map.baidu.com/api?v=3.0&ak=你的akKey&callback=bMapInit'; document.body.appendChild(script); }, qeuryLocation () { let myGeo = new BMap.Geocoder(); // 地址轉換成坐標系 myGeo.getPoint('北京市海淀區上地10街10號', function (point) { if (point) { console.log(point); } }, '北京市'); } }, mouted () { this.loadBMapScript(); window['bMapInit'] = () => { this.qeuryLocation(); }; }}至此,就能夠開始正常的使用百度地圖了。
按照官方文檔寫的代碼報了以下圖示的錯:

經過多方考察最終發現造成這個的原因是頁面加載順序導致的,這點在官網上也有提示,詳細請查看官方文檔
由于我用的是vue2.0,所以我是在mounted方法中調用的以下兩個方法:
var map = new BMap.Map("container"); //創建地圖實例,注意在調用此構造函數時應確保容器元素已經添加到地圖上var point = new BMap.Point(116.404, 39.915); //創建點坐標, 地圖必須經過初始化才可以執行其他操作以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。
|
新聞熱點
疑難解答