前言:这篇文章讲述的是map标签的@tap点击地图事件;添加的标记点都是保存在markers数组里面,点击地图就会获取点击的位置的经纬度,然后在point里面追加了iconPath标记点的图标,之后使用了concat将点击地图的对象添加到markers数组里面就完成了点击地图显示标记点了。


uniapp地图-删除标记点
uniapp地图-标记点-多点连线


具体的也可以看看官网的介绍:https://uniapp.dcloud.io/component/map?id=map


最终效果-gif图片:
在这里插入图片描述

<template>
	<view>
		<view style="width: 100%;height: 100%;position: absolute;left: 0;tab-size: 0;">
			<map :id="maps" :markers="markers" style="width: 100%;height: 100%;" @tap="tapMap"></map>
		</view>
	</view>
</template>

<script>
	export default {
		data() {
			return {
				maps: 1,
				markers: []
			}
		},
		methods: {
			tapMap(e) {
				var that = this;
				var id = e.currentTarget.id;
				var maps = uni.createMapContext(id, this).$getAppMap();

				maps.onclick = function(point) {
					console.log(point);
					
					point.iconPath = '/static/btn_loc0.png';
					that.markers = that.markers.concat(point);
					
					uni.showToast({
						title: '添加成功',
						icon: 'none'
					});
				};
			}
		}
	}
</script>

<style>

</style>
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐