我做了一個代碼來獲取郵政編碼的地址。我寫了這樣的代碼下面Uncaught TypeError:無法讀取未定義的屬性'GetLatdlngd'
constructor(props) {
super(props);
this.handleInput=this.handleInput.bind(this);
this.GetpostalAddress=this.GetpostalAddress.bind(this);
this.GetLatdlngd=this.GetLatdlngd.bind(this);
}
componentWillMount() {
const script = document.createElement("script");
script.src = "http://maps.googleapis.com/maps/api/js?key=AIzaSyAl_I8Rp3zLc4ZN8gBLRTmOjwacWAHSk4Y";
script.async = true;
document.body.appendChild(script);
}
handleInput(e)
{
var PostalCode=e.target.value;
var latitude=0;
var longitude=0;
var Placeid='';
var latlng =0;
if(PostalCode.length==6)
{
this.GetpostalAddress(PostalCode,function(Address){
alert(Address);
this.GetLatdlngd(Address,function(){
});
});
}
}
GetpostalAddress(PostalCode,callback)
{
var HotelName='Hotel ABC';
var City='';
var State='';
var Country='';
var Address='';
var geocoder = new google.maps.Geocoder();
geocoder.geocode({ 'address': PostalCode }, function(results, status) {
if (status == 'OK') {
//alert(JSON.stringify(results));
City=results[0].address_components[1].long_name;
State=results[0].address_components[3].long_name;
Country=results[0].address_components[4].long_name;
Address=HotelName+','+City+','+State+','+Country;
callback(Address);
} else {
alert('Geocode was not successful for the following reason: ' + status);
}
});
}
GetLatdlngd(Address,callback)
{
alert('inlat='+Address);
var geocoder = new google.maps.Geocoder();
geocoder.geocode({'address': Address }, function(results, status) {
if (status === google.maps.GeocoderStatus.OK) {
var lattitude=results[0].geometry.location.lat();
var longitude=results[0].geometry.location.lng();
//alert(JSON.stringify(results));`enter code here`
alert(lattitude,longitude);
callback();
}
});
//
}
但在調用第二個函數及其投擲的錯誤 遺漏的類型錯誤:無法讀取屬性「GetLatdlngd」的未定義
任何人能告訴我,爲什麼這個錯誤是occurring`
你有您已定義的構造函數的類? –
更改後當前我的代碼如下所示: – HHasha
請查看編輯的代碼 – HHasha