如何在vue項(xiàng)目中使用百度地圖API
1、在百度地圖開放平臺(tái)注冊(cè)賬號(hào)并登錄
網(wǎng)址:http://lbsyun.baidu.com/index.php?title=jspopularGL
2、選擇自己所需的地圖版本:
我個(gè)人使用2.0足夠了,其實(shí)就是懶,一直用的2.0沒看3.0。但是3.0應(yīng)該也差不多的使用。

3、在我們的vue項(xiàng)目中的public文件夾下的index.html中引入并記得替換上你的ak(這個(gè)ak不是其他的ak哈)
<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=你的ak"></script>
4、之后就可以隨處使用我們的百度地圖了:
在我們需求的頁(yè)面組件中添加地圖容器:
<div id="map" class="map"></div>
這里的class用來(lái)定義大小、布局等樣式操作;重要的是id值map。
一般我們會(huì)在組件加載,也就是頁(yè)面渲染時(shí)加載我們的地圖,所以我們可以在mounted階段添加我們的核心代碼:
// 百度地圖API功能
var map = new BMap.Map("map"); // 創(chuàng)建Map實(shí)例
map.centerAndZoom(new BMap.Point(104.07258, 30.550701), 20); // 初始化地圖,設(shè)置中心點(diǎn)坐標(biāo)和地圖級(jí)別
//添加地圖類型控件
map.addControl(
new BMap.MapTypeControl({
mapTypes: [BMAP_NORMAL_MAP, BMAP_HYBRID_MAP],
})
);
map.setCurrentCity("成都"); // 設(shè)置地圖顯示的城市 此項(xiàng)是必須設(shè)置的
map.enableScrollWheelZoom(true);
這樣就在頁(yè)面顯示出來(lái)了我們的百度地圖,記得css中添加寬高??!
5、標(biāo)記點(diǎn)的添加并擁有點(diǎn)擊彈窗效果:
let point = new BMap.Point(104.07258, 30.550501);
// 創(chuàng)建點(diǎn)標(biāo)記
var marker = new BMap.Marker(point);
// 在地圖上添加點(diǎn)標(biāo)記
map.addOverlay(marker);
// 創(chuàng)建信息窗口
var opts = {
width: 200,
height: 100,
title: "彈窗標(biāo)題",
};
var infoWindow = new BMap.InfoWindow(
"彈窗內(nèi)容",
opts
);
// 點(diǎn)標(biāo)記添加點(diǎn)擊事件
marker.addEventListener("click", function () {
map.openInfoWindow(infoWindow, point); // 開啟信息窗口
});
6、為坐標(biāo)點(diǎn)添加文本標(biāo)記:
//設(shè)置文本標(biāo)記
var opts2 = {
position: point, // 指定文本標(biāo)注所在的地理位置
offset: new BMap.Size(30, -30), // 設(shè)置文本偏移量
};
// 創(chuàng)建文本標(biāo)注對(duì)象
var label = new BMap.Label("成都書論技術(shù)有限公司", opts2);
// 自定義文本標(biāo)注樣式
label.setStyle({
color: "blue",
borderRadius: "5px",
borderColor: "#ccc",
padding: "10px",
fontSize: "16px",
height: "50px",
lineHeight: "30px",
fontFamily: "微軟雅黑",
});
map.addOverlay(label);
以上就是如何在vue項(xiàng)目中使用百度地圖API的詳細(xì)內(nèi)容,更多關(guān)于vue項(xiàng)目中使用百度地圖API的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Vue router的addRoute方法實(shí)現(xiàn)控制權(quán)限方法詳解
這篇文章主要介紹了vue動(dòng)態(tài)路由添加,vue-router的addRoute方法實(shí)現(xiàn)權(quán)限控制流程,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧2022-09-09
詳解vue-cil和webpack中本地靜態(tài)圖片的路徑問題解決方案
這篇文章主要介紹了詳解vue-cil和webpack中本地靜態(tài)圖片的路徑問題解決方案,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2017-09-09
vue3+ts實(shí)現(xiàn)一個(gè)表單組件的詳細(xì)代碼
這篇文章主要介紹了vue3+ts實(shí)現(xiàn)一個(gè)表單組件的詳細(xì)代碼,確保通過(guò)axios調(diào)用后端接口來(lái)獲取省市區(qū)和街道數(shù)據(jù),并在選擇省市區(qū)時(shí)加載相應(yīng)的街道數(shù)據(jù),需要的朋友可以參考下2024-07-07
Vue項(xiàng)目打包(build)時(shí),自動(dòng)打以時(shí)間命名的壓縮包方式
這篇文章主要介紹了Vue項(xiàng)目打包(build)時(shí),自動(dòng)打以時(shí)間命名的壓縮包方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-10-10

