【问题标题】:Vuejs x5-gmaps Map Markers Not ShowingVuejs x5-gmaps地图标记不显示
【发布时间】:2023-03-19 21:23:01
【问题描述】:

我正在使用 vue2 x5-gmaps 创建地图并显示我的数据库中所有属性的位置。在显示我的地图时,尽管我已经指定了标记位置,但上面没有标记。如果我记录对象的纬度和经度,它会正确显示。任何关于我需要改进的帮助或建议将不胜感激。

我的代码如下所示:

<div class="mapImgDiv"> 
   <gmaps-map> 
      <gmaps-marker v-for="(item, i) in propsForMap" :key="i" :position="{lat : parseFloat(item.lat) , lng: parseFloat(item.long) }" />
   </gmaps-map>
</div>

我的方法是这样的,我用的是firebase

const self = this;
        self.loading_me = true;
        db.collection("Properties")
        .where("homelocation", "==", location)
          .get()
          .then(querySnapshot => {
            querySnapshot.forEach(doc => {
              const data = doc.data();
              self.propsForSale.push(data);
              self.propsForMap.push(data);
            });
            this.loading_me = false;
          })
          .catch(error => {
            console.log(error);
          });

数据快照:

{
"lat" : -1.2804047,
"location: : "Kikuyu Road",
"long" : 36.695223,
"period" : "Month"
}

【问题讨论】:

    标签: vue.js google-maps


    【解决方案1】:

    代码是正确的,我为地图添加了一个中心,以便我可以更好地查看我的理想位置。

    mapOptions: {
       center: { lat: -1.3031934, lng: 36.5672003 },
       zoom: 10
    }
    
    <gmaps-map :options="mapOptions"> 
                  <gmaps-marker v-for="(item, i) in propsForMap" :key="i" :position="{lat: parseFloat(item.lat), lng: parseFloat(item.long)}" />
                </gmaps-map>
    

    【讨论】:

      猜你喜欢
      • 2018-11-04
      • 2013-04-01
      • 1970-01-01
      • 2020-08-07
      • 2021-05-07
      • 2014-10-08
      相关资源
      最近更新 更多