Gmaps4Rails v2:如何使用自定义属性删除标记



我一定错过了一些显而易见的东西——我基本上是在尝试在v2中做,我认为在[这个SO问题]中概述了这一点,但在v2中不起作用。具体地,不再定义Gmaps.maps

我已经了解到,如果我存储在buildMaps回调中调用addMarkers时返回的标记数据数组,我可以使用该数组的元素来删除标记。

如果我在发送给addMarkers的JSON中存储了一个自定义属性,那么我也可以保留该JSON数组,查询该属性,找到索引,然后在标记数据数组中隐藏带有该索引的标记-我的意思是,在伪代码中:

json_array=generate_json();
handler.build_map({}, function() { window.marker_data=handler.addMarkers(); });
indexes=find_in_json(json_array, {"type":"hotel"});
marker_data[i].hide() for i in indexes;

但这意味着我在两个地方有相同的概念数据——有没有更好的方法可以避免在两个单独的数组中管理标记的"模型"?

我理解你的担忧。

在这种情况下,我所做的是合并数据,检查http://apneadiving.github.io/有一个例子(查看侧边栏部分)

var markers = handler.addMarkers(json_array);
_.each(json_array, function(json, index){
  json.marker = markers[index];
});

最新更新