javascript - Google 地理编码:无法读取 Object.success 处未定义的属性“setCenter”
问题描述
您好我正在使用 Google 地理编码从 Json 请求结果中放置地图标记。请看下面的代码:
<script>
$( document ).ready(function () {
$('.table').hide();
$.getJSON(url, '', function (response) {
map.setCenter(JSON.parse(response[0].coordinates));
var infowindow = new google.maps.InfoWindow({
content: response[0].address
});
;
var ico = '/assets/images/address.png';
var marker = new google.maps.Marker({
map: map,
position: JSON.parse(response[0].coordinates),
title: response[0].address,
icon: ico
});
infowindow.open(map, marker);
marker.addListener('click', function () {
infowindow.open(map, marker);
});
});
})
</script>
<script>
var geocoder;
var map;
function initialize() {
geocoder = new google.maps.Geocoder();
var latlng = new google.maps.LatLng(-XXXXX, XXXXX);
var mapOptions = {
zoom: 16,
center: latlng
}
map = new google.maps.Map(document.getElementById('map'), mapOptions);
}
function codeAddress() {
var address = document.getElementById('address').value;
geocoder.geocode( { 'address': 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 {
alert('Geocode was not successful for the following reason: ' + status);
}
});
}
</script>
出于某种原因,当我第一次用力刷新页面或加载页面时
无法在 Object.success 处读取未定义的属性“setCenter”错误。谁能让我知道我在这里做错了什么。
解决方案
推荐阅读
- jenkins - 应用和保存按钮在 Jenkins 上不起作用
- php - 如何在 prestashop 中发送电子邮件?
- ngrx - 如何使用实体适配器和并行返回状态对象
- ios - 按下按钮swiftUI时计时器不显示正确的时间
- javascript - 如何使用 jQuery/Javascript 将值保存到 localStorage
- group-policy - 无法使用此 GPO 组合用户是 X 组的成员并且用户不是 Y
- php - Drupal 8 或 9 将数据从自定义模块保存到内容类型
- c++ - 尝试使用 Cocos2D-x C++ 调用初始化函数
- react-native - 如何修复 React Native Navigator 不起作用
- github - 如何验证 SSH 指纹?