天地图编辑支持删除编辑点

截至2025年3月21日天地图4.0线编辑,只支持添加点,不支持删除编辑点,后续只能通过绑定地图事件曲线救国,虽然没有高德丝滑,但至少可以使用;

效果图

核心方法
typescript 复制代码
/* 绑定地图右键
  高德地图是鼠标双击删除,已经帮你试过了,天地图有时候会触发2次,导致线锁死;
*/
map.addEventListener('contextmenu', function(e){
     // 如果线不在编辑模式就直接退出
	if (!line.isEditable()) {
	    return;
	}
	// 禁用线编辑_不禁用启用的话,删除了点手柄还在;
	line.disableEdit();
	var curLngLats = line.getLngLats();
	var clickLngLat = [e.lnglat.lng.toFixed(2), e.lnglat.lat.toFixed(2)];
	var index = -1;
	for (let i =0;  i< curLngLats.length; i++) {
	    var tmpLngLat = [curLngLats[i].lng.toFixed(2), curLngLats[i].lat.toFixed(2)];
	    if (tmpLngLat[0] === clickLngLat[0] && tmpLngLat[1] === clickLngLat[1]) {
	        index = i;
	        break;
	    }
	}
	// 找到匹配的点删除_如果是<2就不删除这边还可以加个提示
	if (index !== -1 && curLngLats.length > 2) {
	     curLngLats.splice(index, 1);
	 };
    // 把最新的点复制给线
	line.setLngLats(curLngLats);
	// 启用线编辑
	line.enableEdit();
 })
相关推荐
ma77几秒前
JavaScript 获取短链接原始地址的解决方案
前端
该用户已不存在几秒前
关于我把Mac Mini托管到机房,后续来了,还有更多玩法
服务器·前端·mac
tianchang4 分钟前
SSR 深度解析:从原理到实践的完整指南
前端·vue.js·设计模式
闲蛋小超人笑嘻嘻5 分钟前
前端面试十一之TS
前端
摆烂为不摆烂5 分钟前
😁深入JS(四): 一文让你完全了解Iterator+Generator 实现async await
前端
DoraBigHead18 分钟前
🧠 别急着传!大文件上传里,藏着 Promise 的高级用法
前端·javascript·面试
嘉琪00120 分钟前
封装一个有最小化的dialog组件
前端·javascript·css
水果里面有苹果23 分钟前
20-C#构造函数--虚方法
java·前端·c#
Zachery Pole23 分钟前
BootStrap
前端·bootstrap·html
一尾流莺25 分钟前
【2025 年中总结】世事浮云何足问,不如高卧且加餐
前端·掘金社区