地图组件用来开发与地图有关的应用,如共享单车、美团点评、滴滴打车、查看附近电影院订票软件、外卖送餐轨迹等都会用到地图组件
在地图组件上可以标记覆盖物以及指定一系列的坐标位置,如某个自行车或餐厅的位置,如图3.16所示
map组件的属性有很多,这里列出常用的属性,如表3.15所示
map组件常用的属性
属性名 | 类型 | 默认值 | 说明 |
---|---|---|---|
bindmarkertap | eventhandle | 点击标记点时触发,e.detail={markerId} | |
bindlabertap | eventhandle | 点击label时触发,e.detail={markerId} | |
bindcontroltap | eventhandle | 点击控件时触发,e.detail={controlId} | |
bindcallouttap | eventhandle | 点击标记点对应的气泡时触发,e.detail={markerId} | |
bindupdated | eventhandle | 在地图渲染更新完成时触发 | |
bindregionchange | eventhandle | 视野发生变化时触发 | |
bindpoitap | eventhandle | 点击地图poi点时触发,e.detail={name,longitude,latitude} |
地图组件使用示例
index.wxml
----------------
<view class="container">
<map
style="width: 100%; height: 300px;"
latitude="{{latitude}}"
longitude="{{longitude}}"
scale="{{14}}"
markers="{{markers}}"
enable-3D
show-compass="{{showCompass}}"
show-location="{{showLocation}}"
enable-zoom
enable-rotate
enable-overlooking
enable-scroll
>
</map>
</view>
------------------------------------------------------------
index.js
-----------
Page({
data: {
latitude: 40.011516,
longitude: 116.31059,
markers: [{
latitude: 40.011516,
longitude: 116.31059,
name: '圆明园'
}],
enable3d: true,
showCompass: true,
showLocation:true,
enableOverlooking: true
},
toggle3d() {
this.setData({
enable3d: !this.data.enable3d
})
}
})