Polyline不接受Google Maps API MVCArray

问题描述

| 我有一个简单的代码绘制标记,然后将它们与折线连接在一起,但是我要与折线一起使用的MVCArray无法正常工作(并且“ \ n \ n \ n not work \”,我的意思是折线\没有被绘制)。这是我的代码:
$(document).ready(function(){
    var latlng = new google.maps.LatLng(36.686041,-80.661621);
    var map = new google.maps.Map(document.getElementById(\"network_map\"),{
        zoom: 6,center: latlng,mapTypeId: google.maps.MapTypeId.ROADMAP
    });

    $(\"input[name=\'submit\']\").click(function() {
        var geocoder = new google.maps.Geocoder();
        var locations = new google.maps.MVCArray();
        var i = 0;
        $(\"input[name=\'address[]\']\").each(function() {
            geocoder.geocode({\"address\" : this.value },function(results) {
                var addrLl = results[0].geometry.location;
                locations.insertAt(locations.length,addrLl);
                var marker = new google.maps.Marker({
                    map: map,position: addrLl
                });
            });
        });
        console.log(locations);
        var connectPath = new google.maps.Polyline({
            path: locations,strokeColor: \"#FF0000\",strokeOpacity: 1.0,strokeWeight: 100,map: map
        });
        return false;
    });
});

// console.log(locations); result from firebug
W { b=[0],gm_accessors_={...},length=0}
    

解决方法

        我可以通过设置100ms超时来解决我的问题,以防止在地理编码器完成地理编码之前将MVCArray发送到Polyline。     

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...