微信小程序地图添加marker

本文章是在uniapp开发的微信小程序中使用腾讯地图,在地图上添加标记

// 添加地图标记的方法

    addMarkers(driverList) {   //driverList为需要添加到地图标记上的司机数组
                const markers = []   //地图标记数组
                driverList.forEach(item => {
                    markers.push({
                        id: item.driverId, // 唯一标识符
                        latitude: item.latitude,//纬度
                        longitude: item.longitude,//经度
                        width: 20,//地图icon的宽度
                        height: 20,//地图icon的高度
                        label: {      //标记的提示文字的样式
                            width: 50,
                            height: 30,
                            borderRadius: 10,
                            content: item.nickName,//提示内容
                            color: '#fff',
                            bgColor: '#8cc540'
                        }
                    })
                })
                uni.createMapContext("isMap", this).addMarkers({   //调用uniapp地图组件的方法,进行标记,“isMap”为地图组件的id
                    markers,   //需要标记的数组
                    clear: true,//标记时,是否清除上一次留下来的标记
                })
            },

效果如图所示

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要实现这个功能,可以按照以下步骤进行操作: 1. 在微信开发者工具中创建一个新的小程序项目,并且勾选上“使用微信云开发”选项。 2. 在小程序页面中引入地图组件。可以使用微信提供的组件`<map>`来实现。 3. 在小程序页面中添加标点。可以使用微信提供的`<map>`组件的`markers`属性来添加标点。 4. 为每一个标点添加点击事件。可以使用微信提供的`<map>`组件的`bindmarkertap`属性来添加点击事件,并且指定一个函数来处理点击事件。 5. 在点击事件的处理函数中,使用微信提供的`wx.navigateTo`函数来跳转到指定页面。 下面是一个示例代码,可以帮助你实现这个功能: ```html <!-- 在小程序页面中添加地图组件 --> <map id="myMap" latitude="{{latitude}}" longitude="{{longitude}}" markers="{{markers}}" bindmarkertap="onMarkerTap"></map> ``` ```javascript // 在小程序页面中添加以下代码 Page({ data: { latitude: 39.912345, // 初始化地图的中心点纬度 longitude: 116.123456, // 初始化地图的中心点经度 markers: [{ id: 1, latitude: 39.912345, longitude: 116.123456, title: '这是一个标点', iconPath: '/images/marker.png' }] }, onMarkerTap: function(event) { // 获取点击的标点的信息 var markerId = event.markerId; var marker = this.data.markers[markerId]; // 跳转到指定页面 wx.navigateTo({ url: '/pages/detail/detail?latitude=' + marker.latitude + '&longitude=' + marker.longitude + '&title=' + marker.title }) } }) ``` 在上面的代码中,我们首先在小程序页面中添加了一个地图组件,并且设置了地图的中心点和一个标点。然后为`<map>`组件添加了`bindmarkertap`属性,并且指定了一个`onMarkerTap`函数来处理点击事件。当用户点击了某一个标点时,`onMarkerTap`函数会被触发,然后获取点击的标点的信息,并且使用`wx.navigateTo`函数跳转到一个指定的页面。在这个页面中,我们可以根据传入的经纬度和标题等信息来显示地图的具体位置和相关信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值