NgMap角度标记

时间:2016-07-12 16:21:27

标签: javascript angularjs html5 google-maps

我正在为我的应用程序实现角度的Ng-Map。所以我从数据库中检索条目并尝试删除标记。但问题是我有大约40个条目,只有前11个出现在标记中。我检查过,所有40名教练都出现在model.coaches中。所有剩余的都显示在地图的中心。我的应用程序有位置过滤器。因此,如果我为特定位置添加过滤器,则所有标记都会显示该位置,但一旦我将其删除,只有前11个出现。有什么问题?

    <ng-map center="37.09024, -95.712891" zoom="4" mayTypeId="ROADMAP"
style="height: 88%; width: 100%" styles="{{model.styles}}"
                    pan-control="false"
                    map-type-control="false"
                    map-type-control-options="false"
                    zoom-control="true"
                    zoom-control-options="false">


                <marker ng-repeat="coach in model.coaches track by $index"
                        id="{{$index}}"
                        position="{{coach.Town}} {{coach.State}}{{coach.Zipcode}}"
                        on-mouseover="model.showinfowindow(event,$index)"
                        on-mouseout="model.hideinfowindow()"
                        on-click="model.viewMapProfile(coach)">
                </marker>


                <info-window id="foo">
                    <div ng-non-bindable="" align="center" class="mapViewProfile" style="padding-left: 20px">
                        {{model.coach.name}}<br>
                        {{model.coach.schoolName}}
                    </div>
                </info-window>

            </ng-map>

1 个答案:

答案 0 :(得分:0)

查看position="{{coach.Town}} {{coach.State}}{{coach.Zipcode}}"我明白在指令的某处你需要解析字符串地址以进行协调。

要解析要协调的字符串,您应该执行地理编码服务请求。 Maps JavaScript API最初有一堆10个地理编码请求,一旦使用此存储桶,您就可以每秒1次请求执行请求。因此,您从初始存储桶+ 1个请求中获得10个标记,其他所有标记返回OVER_QUERY_LIMIT。

在这种情况下,

ng-repeat执行地理编码请求的速度比API允许的速度快。