本代码旨在为 Web 应用集成地图交互功能,例如在地图上标记位置、测量距离、绘制图形等,满足各类地理信息展示和处理需求。
代码提供了以下基本功能:
1. 脚本和样式加载
async loadScripts(sources) {
await Promise.all(sources.map((src) => this.loadScript(src)))
}
async loadStyles(hrefs) {
await Promise.all(hrefs.map((href) => this.loadStyle(href)))
}
使用 Promise.all()
并发加载多个脚本和样式文件,确保所有必需的资源在初始化地图之前加载完成。
2. 地图初始化
const BMapGL = window.BMapGL
var map = new BMapGL.Map('container')
map.centerAndZoom(new BMapGL.Point(116.404, 39.928), 15)
map.enableScrollWheelZoom(true)
实例化百度地图对象,设置地图中心点和缩放级别,并启用鼠标滚轮缩放功能。
3. 鼠标点击事件
map.addEventListener('click', function (e) {
alert('点击位置经纬度:' + e.latlng.lng + ',' + e.latlng.lat)
})
为地图添加点击事件监听器,当用户点击地图时,弹出提示框显示点击位置的经纬度。
开发经验与收获
未来拓展与优化