关于 uniapp 中地图 marker 的自定义气泡会被其他marker遮挡如何解决

在这里插入图片描述

去掉marker 里面的color,bgColor

<map  class="map" style="width: 100%; height: 300px;" :latitude="startposition.lat" :longitude="startposition.lng"
				:markers="covers" :polyline="polyline"
				@markertap="openMap(startposition.lat,startposition.lng,initFoemdata.title)"  :scale="7">
				//自定义气泡
					<cover-view slot="callout">  
						<block  v-for="(item, index) in customCalloutMarkerIds" :key="index">
					        <cover-view  :marker-id="1">
					          <cover-view class="bigBox">
					            <cover-view class="box" style="background:#fff;font-size: 24rpx;">
					              <cover-view class="font">距您还有</cover-view>
					              <cover-view class="right" style="color: #0FBA75;">{{item.distance}}</cover-view>
								  <cover-view class="font">公里</cover-view>
					            </cover-view>
								<cover-view class="content" style="font-size: 24rpx;text-align: center;">
									<cover-view>预计需要</cover-view>
									<cover-view style="color: #0FBA75;">{{item.cost}}</cover-view>
								 </cover-view>
					          </cover-view>
					        </cover-view>
						</block>
					</cover-view>
			</map>

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
uniapp使用高德地图marker点击事件,可以通过以下步骤实现: 1. 首先,在uniapp的页面引入高德地图组件,可以使用官方提供的`uni-amap`插件。 2. 在页面添加地图组件,并设置相应的属性,如id、latitude、longitude等。 3. 在页面的methods定义marker的点击事件函数。可以使用`bindmarkertap`属性绑定一个点击事件,当marker被点击时,触发相应的函数。 4. 在marker的点击事件函数,可以编写需要执行的代码逻辑。例如,可以在点击事件跳转到其它页面,或者显示相应的信息。 以下是一个示例代码: ``` <template> <view> <uni-amap :amap-id="'myMap'" :amap-style="'width: 100%; height: 400rpx;'"></uni-amap> </view> </template> <script> const eventType = { // 定义marker点击事件的类型 MARKER_TAP: 'markertap' } export default { data() { return { markers: [ { id: 1, title: 'Marker 1', latitude: 39.99, longitude: 116.32 }, { id: 2, title: 'Marker 2', latitude: 40.01, longitude: 116.34 } ] } }, methods: { onMarkerTap(e) { // 获取被点击的marker的id const markerId = e.markerId // 在这里可以编写点击事件的逻辑,例如跳转到其它页面或显示相应信息 console.log('Marker ' + markerId + ' has been tapped') } }, onReady() { uni.$emit(eventType.MARKER_TAP, this.onMarkerTap) } } </script> ``` 以上代码在页面加载时,通过`onReady`钩子函数监听marker的点击事件。当marker被点击时,触发`onMarkerTap`函数,并输出被点击的marker的id。你可以在该函数根据需要编写相应的业务逻辑。请注意,本示例仅作为参考,具体实现可能根据需求有所变化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Sunny

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值