【问题标题】:gmaps.js geocoder not working?gmaps.js 地理编码器不工作?
【发布时间】:2016-06-26 18:47:28
【问题描述】:

我正在尝试构建一个 Rails 博客,该博客使用属于数据库中对象的地址在谷歌地图上显示位置。 我一直在使用 gmaps.js,头上有这个脚本:

<head> <script src='https://maps.google.com/maps/api/js?sensor=true'></script> </head>

我正在渲染的部分看起来像这样:

 <script>
  var map = new GMaps({
  div: '#map',
  lat: -12.043333,
  lng: -77.028333,
  scrollwheel:  false,
  draggable: false,
  clickable: true
});

  GMaps.geocode({
  address: "<%= @post.address %>",
  callback: function(results, status) {
    if (status == 'OK') {
      var latlng = results[0].geometry.location;
      map.setCenter(latlng.lat(), latlng.lng());
      map.addMarker({
        lat: latlng.lat(),
        lng: latlng.lng()
      });
    }
  }
});
   </script> 

现在部分显示地图,但它不显示与@post 关联的位置,即使&lt;%= @post.address %&gt; 确实显示地图上下文之外的地址。

谁能帮我解决这个问题?我确定这一定是一个相对简单的问题,但我想不通。任何帮助将不胜感激。

提前致谢。

【问题讨论】:

  • 你是什么意思:即使 确实在地图上下文之外显示地址?你也可以分享一个截图
  • 我在 view.html.erb 中对其进行了测试,以检查 '.address' 不是 nil,它也不是 nil。所以我认为问题出在gmaps代码中。如果你真的想要,我可以分享一张图片,但目前它只是页面上的一张地图,显示一些默认坐标。

标签: javascript ruby-on-rails google-maps gmaps4rails gmaps.js


【解决方案1】:

我认为您应该检查该地址是否可以使用 Google 的 API 进行地理编码。您可以使用GMaps playground here 试用该地址。当我使用我的长地址时,我发现它不是地理编码,但它很快找到了一个较短的地址。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-07-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-05
    • 1970-01-01
    • 2013-09-28
    • 1970-01-01
    相关资源
    最近更新 更多