小程序开发之Map地图组件详解
创作时间:
作者:
@小白创作中心
小程序开发之Map地图组件详解
引用
1
来源
1.
https://www.cnblogs.com/limaostudio/articles/13617986.html
Map组件简介
Map组件是小程序中的原生组件,使用时需要注意相关限制。个性化地图能力可以在小程序后台“设置-开发者工具-腾讯位置服务”申请开通。设置subkey后,小程序内的地图组件均会使用该底图效果,底图场景的切换会在后续版本提供。
本文主要展示地图组件的几个核心功能:
- 经纬度转预览图
- 经纬度转大图
- 地理位置转经纬度
- 预览图缩放
最终效果如下:
Map组件代码实现
HTML部分
<view class="page-body">
<view class="page-section page-section-gap">
<map
id="myMap"
style="width: 100%; height: 300px;"
latitude="{{latitude}}"
longitude="{{longitude}}"
markers="{{markers}}"
covers="{{covers}}"
show-location
></map>
</view>
<view class="btn-area">
<button bindtap="chooseLocation" class="page-body-button" type="primary">选择位置</button>
<button bindtap="openLocation" class="page-body-button" type="primary">打开位置</button>
<button bindtap="getCenterLocation" class="page-body-button" type="primary">获取位置</button>
<button bindtap="moveToLocation" class="page-body-button" type="primary">移动位置</button>
<button bindtap="translateMarker" class="page-body-button" type="primary">移动标注</button>
<button bindtap="includePoints" class="page-body-button" type="primary">缩放视野展示所有经纬度</button>
</view>
</view>
JavaScript部分
Page({
data: {
latitude: 23.099994,
longitude: 113.324520,
markers: [{
id: 1,
latitude: 23.099994,
longitude: 113.324520,
name: 'T.I.T 创意园'
}],
covers: [{
latitude: 23.099994,
longitude: 113.344520,
iconPath: '/image/location.png'
}, {
latitude: 23.099994,
longitude: 113.304520,
iconPath: '/image/location.png'
}]
},
onReady: function (e) {
this.mapCtx = wx.createMapContext('myMap')
},
chooseLocation:function(){
var that = this;
wx.chooseLocation({
success: function (res) {
console.log(res, "location")
console.log(res.name)
console.log(res.latitude)
console.log(res.longitude)
that.setData({
latitude: res.latitude,
longitude: res.longitude
})
},
fail: function () {
// fail
},
complete: function () {
// complete
}
})
},
openLocation:function(){
var that = this;
wx.openLocation({
latitude: that.data.latitude,
longitude: that.data.longitude,
scale: 18
})
},
getCenterLocation: function () {
this.mapCtx.getCenterLocation({
success: function(res){
console.log(res.longitude)
console.log(res.latitude)
}
})
},
moveToLocation: function () {
this.mapCtx.moveToLocation()
},
translateMarker: function() {
this.mapCtx.translateMarker({
markerId: 1,
autoRotate: true,
duration: 1000,
destination: {
latitude:23.10229,
longitude:113.3345211,
},
animationEnd() {
console.log('animation end')
}
})
},
includePoints: function() {
this.mapCtx.includePoints({
padding: [10],
points: [{
latitude:23.10229,
longitude:113.3345211,
}, {
latitude:23.00229,
longitude:113.3345211,
}]
})
}
})
CSS部分
.page-section-gap{
box-sizing: border-box;
padding: 0 30rpx;
}
.page-body-button {
margin-bottom: 30rpx;
}
总结
本文详细介绍了小程序开发中Map组件的使用方法,包括其核心功能和代码实现。通过本文,开发者可以快速掌握Map组件的使用技巧,为小程序开发提供便利。
本文原文来自Cnblogs
热门推荐
北宫雨泽教你如何向朋友表白
中西医结合治肺癌,五种食疗方案助力患者康复
中药治疗肺癌获临床验证,白花蛇舌草等三种中药效果显著
从饮食到治疗:全方位应对口腔溃疡复发指南
江西大鲵:娃娃鱼界的“大熊猫”保护之路
红凤菜:清热解毒、补血益气的养生保健蔬菜
开平碉楼:铭石楼的中西合璧传奇
开平碉楼一日游:立园、自力村、马降龙
红枫菜:冬季养生的保健食材,富含维C能清热
红枫菜富含7种保健功效,营养价值高且食用方法多样
红枫菜:营养价值高且药用价值丰富的养生蔬菜
晴隆绿茶&信阳毛尖:高标准采购促产业升级
食品安全新标准:茶叶检测严查农药残留
写作也能提升思维能力?创意写作助你打破思维定势
满语数据库建成,20余部专著出版,满族文化保护传承显成效
古代中国:孩子3岁后就可能要独立睡觉了
财务指标分析,让你的企业管理更高效!
财务指标助你玩转企业管理
打造文旅新名片,镇江市委书记三次为地方美食代言
Jenkins插件配置指南:从基础安装到自动化部署
Docker Jenkins插件安装失败?这些方案帮你轻松解决
冬季壶口瀑布旅游攻略:第四届冰瀑节盛大开幕
黄河壶口瀑布再现奇观!
观瀑台摄影秘籍:拍出壶口瀑布大片
跟着芳芳玩转山西壶口瀑布五日游
绍兴会稽山三日游:千年古山的文化之旅与美食攻略
春节情侣游张家界vs茅山:茅山年味更浓,体验更佳
太原太山推20项新春活动,千年古刹焕发新活力
腰背痛|久坐腰背痛吃白面包更痛?必戒5类食物 医生推介5大食物止痛抗发炎
【“爱”在冬日 健康“童”行】——东艺幼儿园冬季幼儿保健常识