gpt4 book ai didi

javascript - 如何识别 map 上设置的标记?

转载 作者:行者123 更新时间:2023-12-02 23:45:32 24 4
gpt4 key购买 nike

我有一个 map ,每当用户单击 map 以绘制多边形时,我都会在其中显示标记。现在我想允许用户编辑已经设置的标记。这意味着他应该能够单击标记并将其拖动到所需的位置。

为了仅编辑一个标记的位置,我需要识别正在拖动的一个标记,以便将更改的位置传递给相应的标记。

我试图在我的事件处理程序中执行此操作,因为在这里我可以获取有关标记的更多信息。这是我的处理程序之一,也是所有位置更新都应该发生的处理程序。

[EventUtils.DRAG_END]: (event, details) => {
const target = event.target;
if (target instanceof H.map.Marker) {
this.disableMapBehaviour = false;
const id = target.getId();
this.props.onDrag(details.calculateGeoCoords(), id);
this.forceUpdate();
}

我的问题是 getId() 函数总是为我提供随机 ID。例如,当我设置 10 个标记时,标记 ID 的序列如下所示像:

  • 1 个标记的 ID 为 2
  • 2 个标记的 ID 为 3
  • 3 个标记的 ID 为 5
  • 4 标记的 ID 为 6...其余部分始终不同。

为什么 map 设置ID是随机的,而不是像1,2,3,4,5...?

或者我做错了什么?我是否应该使用 event.target.getId()

之外的其他内容

最佳答案

摘要: map 不会随机设置 Id。是我拖完之后没有拼接Marker数组。现在使用 getId() 可以正常工作

关于javascript - 如何识别 map 上设置的标记?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55874187/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com