Google地图在地理编码结果中返回null

时间:2017-02-05 10:50:33

标签: javascript google-maps

我试着通过地址获取地图,我做了:

var geocoder = new google.maps.Geocoder();
var latlng = new google.maps.LatLng(-34.397, 150.644);
var mapOptions = {
    zoom: 8,
    center: latlng
}
var map = new google.maps.Map(self.$()[ 0 ], mapOptions);
geocoder.geocode( { 'address': self.get('address')}, function(results, status) {
    if (status == 'OK') {
        map.setCenter(results[0].geometry.location);
        var marker = new google.maps.Marker({
            map: map,
            position: results[0].geometry.location
        });
        } else {
            console.log('Geocode was not successful for the following reason: ' + status);
        }

});

我刚刚从google文档中复制了代码来测试它,
所以因为它没有显示地图我开始调试它 我对地址及其罚款console.log做了 我对结果对象做了console.log,得到了3个结果,但是每个结果都有位置函数,带有空值

我不知道问题是什么,如果有人能指导我,我会说错了

但是我得到了视口,这可选择通过视口获取谷歌地图吗?

修改 对不起,我忘了给宽度和宽度地图元素的高度

1 个答案:

答案 0 :(得分:0)

当您创建Map对象时,可能没有正确传递带有 self。$()[0] div 元素:

var map = new google.maps.Map(self.$()[ 0 ], mapOptions);

我已经尝试过直接传递div对象的代码并且它正常工作。 见jsfiddle