您如何通过ID定位Vue Google Map Marker?

时间:2019-07-19 07:15:59

标签: google-maps vue.js memory-leaks vue-component vue2-google-maps

我是Vue的新手,需要在Google地图上建立一组标记,然后我们才能在地图中重新使用它们。 目前,我们无法使:id =“'mark_'+ index”正常工作,document.getElementById('mark_'+ index)提供了null,

<template>
...
<gmap-custom-marker
    :id="'mark_' + index"
    :title="'Marker Title'"
    :marker="get_clean_lat_lng (0,0)"
    :clickable="true"
    class="g_marker"
    alignment="center"
    :z-index="999"
  >
    <map-pointer id="'point_' + index" :icon="'arrow'" :color="'red'" :tool-text="''" />
</gmap-custom-marker>
...
</template>


<script>
...
mounted() {  
    this.$refs.baseMap.$mapPromise.then(map => {
        console.log(document.getElementById('mark_' + index)) // null
    })
  },
...

我正在Vue中重建一个Google Maps应用程序,该应用程序可在Google Maps上实时跟踪一组资产。过去,我们发现,如果您打开地图4个小时,并创建新标记并删除旧标记,则Google地图会滞后。

这是Google Maps的一个已知问题,他们已经8年未解决。我们发现,如果您构建一组标记并只是重复使用它们(更改其位置,图标和文本),则地图不会滞后。

0 个答案:

没有答案