Javascript 如何解决“;无法调用方法…;未定义的”;错误?
在Chrome中给出错误消息:“UncaughtTypeError:无法调用未定义的方法'setDirections'。谁能建议修一下这个吗?thanx您丢失了(全局变量)Javascript 如何解决“;无法调用方法…;未定义的”;错误?,javascript,google-maps-api-3,Javascript,Google Maps Api 3,在Chrome中给出错误消息:“UncaughtTypeError:无法调用未定义的方法'setDirections'。谁能建议修一下这个吗?thanx您丢失了(全局变量) 因此,方向显示未定义。使用==而不是==进行比较,以防万一+良好的编程习惯。消息非常清楚-方向显示未在任何地方定义。var directionsDisplay;正如詹姆斯·希尔所说,我把它定义为全局变量。在调用之前,可能需要检查是否(窗口['directionsDisplay'])。。。或者只在第一个位置定义它。@kamal
因此,
方向显示
未定义。使用==
而不是==
进行比较,以防万一+良好的编程习惯。消息非常清楚-方向显示
未在任何地方定义。var directionsDisplay;正如詹姆斯·希尔所说,我把它定义为全局变量。在调用之前,可能需要检查是否(窗口['directionsDisplay'])
。。。或者只在第一个位置定义它。@kamal,即使您将directionDisplay
定义为全局,只说var directionDisplay
并不会给该对象一个名为setDirections()的方法
function calcRoute() {
var start = document.getElementById("start_").value;
var end = document.getElementById("end_").value;
var request = {
origin: start,
destination: end,
travelMode: google.maps.TravelMode.DRIVING
};
directionsService.route(request, function (response, status) {
if (status == google.maps.DirectionsStatus.OK) {
directionsDisplay.setDirections(response);
}
});
}
//var directionsService = new google.maps.DirectionsService();
var directionsDisplay = new google.maps.DirectionsRenderer({ 'map': map });