前端vue3項目中百度地圖的使用api以及操作實例
一、使用百度地圖的準備工作?
1、先注冊百度賬號 --> 申請成為百度開發(fā)者 --> 獲取服務(wù)密鑰
百度地圖官方地址
二、百度地圖的簡單Demo
以下實例為vue3、ts項目中使用
1、給地圖設(shè)置一個容器,讓地圖容器充滿網(wǎng)頁。
<template>
<div id="container"></div> //給地圖設(shè)置一個容器
</template>
<script>
...
</script>
<style scoped>
#container {
width: 100% !important;
height: 55vh !important;
margin: 20px auto;
overflow: hidden;
}
</style>2、調(diào)用百度api
import { defineComponent, onMounted } from 'vue';
import { BMPGL } from '@/utils/bmpgl.js';
export default defineComponent({
props: {
longitude: {
default: '39.915',
type: String
},
latitude: {
default:'116.404',
type: String
},
title: {
default: '',
type: String
},
reg_address:{
default: '',
type: String
},
},
setup(props) {
onMounted(() => {
BMPGL('s5YsFdu79bjzphdfQK1mnqac1o8987EqxjW').then((BMapGL) => {
// 百度地圖API功能
var map = new BMap.Map('container'); // 創(chuàng)建地圖實例
var point = new BMap.Point(
props.longitude,
props.latitude,
);// 創(chuàng)建點坐標 ,
map.centerAndZoom(new BMap.Point(props.longitude,props.latitude), 2);
//初始化地圖,設(shè)置中心點坐標和地圖級別
var marker = new BMap.Marker(point); // 創(chuàng)建標注
map.addOverlay(marker); // 將標注添加到地圖中
var opts = {
width: 200, // 信息窗口寬度
height: 100, // 信息窗口高度
title: props.title // 信息窗口標題
};
map.enableScrollWheelZoom(true); //開啟鼠標滾輪縮放
var infoWindow = new BMap.InfoWindow(
props.reg_address,
opts
); // 創(chuàng)建信息窗口對象
marker.addEventListener('click', function () {
map.openInfoWindow(infoWindow, point); //開啟信息窗口
});
});
});
return{
}
}
});3、實現(xiàn)的地圖效果

三、百度地圖的常用api有哪些?
1、百度地圖的類型?
(1) map.setMapType(BMAP_EARTH_MAP); // 設(shè)置地圖類型為地球模式;
(2) map.setMapType(BMAP_NORMAL_MAP); // 設(shè)置地圖類型為標準地圖模式;
(3) map.setMapType(BMAP_SATELLITE_MAP); // 設(shè)置地圖類型為普通衛(wèi)星地圖;
2、百度地圖控件
前言:控件是負責(zé)與地圖交互的UI元素,百度地圖JS API支持比例尺、縮放、定位、城市選擇列表、版權(quán),以及自定義控件。
var scaleCtrl = new BMapGL.ScaleControl(); // 添加比例尺控件 map.addControl(scaleCtrl); var zoomCtrl = new BMapGL.ZoomControl(); // 添加縮放控件 map.addControl(zoomCtrl); var cityCtrl = new BMapGL.CityListControl(); // 添加城市列表控件 map.addControl(cityCtrl); var LocationControl= new BMapGL.LocationControl(); // 添加定位控件,用于獲取定位 map.addControl(LocationControl); var CopyrightControl= new BMapGL.CopyrightControl(); // 添加版權(quán)控件,用于展示版權(quán)信息 map.addControl(CopyrightControl);
3、具體可見百度地圖api文檔: https://lbsyun.baidu.com/
總結(jié)
到此這篇關(guān)于前端vue3項目中百度地圖的使用api以及操作的文章就介紹到這了,更多相關(guān)vue3百度地圖使用api內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
vue項目中vue-i18n和element-ui國際化開發(fā)實現(xiàn)過程
這篇文章主要介紹了vue項目中vue-i18n和element-ui國際化開發(fā)實現(xiàn)過程,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2018-04-04
vue3+ts+Vuex中使用websocket協(xié)議方式
這篇文章主要介紹了vue3+ts+Vuex中使用websocket協(xié)議方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-10-10
解決Element ui導(dǎo)航欄選中背景色刷新消失的問題
這篇文章主要介紹了解決Element ui導(dǎo)航欄選中背景色刷新消失的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-05-05
vue3+elementPlus二次封裝表單的實現(xiàn)代碼
最近使用Vue3+ElementPlus開發(fā)項目,從整體上構(gòu)思組件的封裝。能寫成組件的內(nèi)容都進行封裝,方便多個地方使用,這篇文章給大家介紹了vue3+elementPlus二次封裝表單的實現(xiàn),并通過代碼介紹的非常詳細,需要的朋友可以參考下2024-03-03
Vue2打包部署后可動態(tài)修改后端接口地址的解決方法
本篇文章將介紹使用Vue2開發(fā)前后端分離項目時,前端打包部署后可動態(tài)修改后端接口地址的解決方法,文中通過圖文結(jié)合的方式介紹的非常詳細,需要的朋友可以參考下2024-07-07
Vue Echarts實現(xiàn)可視化世界地圖代碼實例
這篇文章主要介紹了Vue Echarts實現(xiàn)可視化世界地圖,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-05-05
vue 使用v-if切換輸入框時導(dǎo)致輸入框的數(shù)據(jù)內(nèi)容沒有清空的問題解決(兩種解決方法)
這篇文章主要介紹了vue 使用v-if切換輸入框時導(dǎo)致輸入框的數(shù)據(jù)內(nèi)容沒有清空的問題解決,本文給大家分享兩種解決方法,需要的朋友可以參考下2023-05-05

