我正在使用angular-google-maps(http://angular-google-maps.org/)在我的AngularJS应用程序中创建地图。在<google-map>
元素中,我有一个<markers>
元素,其models属性设置为一个数组,该数组是$ http.get请求的结果。但由于某种原因,标记永远不会加载。
为了知道数据的存在,我在地图旁边设置了一个带有ng-repeat的简单列表,在返回结果时输出数组中每个元素的id,它确实填充了列表,所以我我不确定为什么在使用<markers>
指令时没有填充标记。是因为它们是从$ http.get加载而我需要做一些不同的事情吗?
这就是我现在正在做的从服务器获取数据的全部内容。卡车是一种具有取景器功能的服务。
Trucks
.findAll()
.then(function(success) {
$scope.trucks = success.data;
}, function(error) {
console.debug(error);
});
我的HTML看起来像这样。
编辑 - 我更多地阅读了文档并发现我需要添加coords属性='self',因为经度和纬度是模型本身的一部分,但标记仍然没有出现
<div class="row row-fluid">
<div class="google-map col-xs-9" center="map.center" zoom="map.zoom">
<markers models="trucks" do-rebuild-all="true" do-cluster="true" coords="'self'"></markers>
</div>
<div class="col-xs-3">
<ul>
<li ng-repeat="truck in trucks">{{truck.id}}</li>
</ul>
</div>
</div>
感谢。
答案 0 :(得分:1)
我知道这看起来很奇怪,它可能无法解决您的问题,但do-cluster属性实际上应该是doCluster。由于这些指令的构建方式,您实际上为这些指令执行了Camel案例。你能发布一个你要回来的数据的例子吗?另外,我相信do-rebuild-all也将是doRebuildAll