मैं angular2-google-maps
और कोणीय 2 के नवीनतम संस्करण के साथ काम कर रहा हूं। मैं कुछ स्थानीय मानचित्र घटक कार्यों को अपनी फाइल maps.service.ts
में सेवाओं में परिवर्तित करने की कोशिश कर रहा हूं।कोणीय 2 नामस्थान 'google' नहीं ढूंढ सकता
map.component.ts
getGeoLocation(lat: number, lng: number) {
if (navigator.geolocation) {
let geocoder = new google.maps.Geocoder();
let latlng = new google.maps.LatLng(lat, lng);
let request = { latLng: latlng };
geocoder.geocode(request, (results, status) => {
if (status == google.maps.GeocoderStatus.OK) {
let result = results[0];
if (result != null) {
this.fillInputs(result.formatted_address);
} else {
alert("No address available!");
}
}
});
}
}
की तरह कुछ में: maps.service.ts
getGeoLocation(lat: number, lng: number): Observable<google.maps.GeocoderResult[]> {
let geocoder = new google.maps.Geocoder();
let latlng = new google.maps.LatLng(lat, lng);
let request = { latLng: latlng };
return new Observable((observer: Observer<google.maps.GeocoderResult[]>) => {
geocoder.geocode({ request }, (
(results: google.maps.GeocoderResult[], status: google.maps.GeocoderStatus) => {
if (status == google.maps.GeocoderStatus.OK) {
observer.next(results);
observer.complete();
} else {
console.log('Geocoding service failed due to: ' +status);
observer.error(status);
}
}
));
});
}
मुद्दा मैं हो रही है कि google
चर मान्यता प्राप्त नहीं किया जा रहा है जब मैं इस्तेमाल करने की कोशिश उदाहरण के लिए Observer<google.maps.GeocoderResult[]>
। मेरे पास सर्विस क्लास के बाहर declare var google: any;
भी है।
google
मेरे map.componenet.ts
में परिवर्तनीय काम करता है लेकिन maps.service.ts
में मान्यता प्राप्त नहीं है।
आप 'google' कहां आयात करते हैं? –
@ AppModule भीतर GünterZöchbauer: 'AgmCoreModule.forRoot ({ apiKey: '--key--', पुस्तकालयों: [ 'स्थानों'] })' – Milo
आप एक टाइपप्रति आयात के रूप में अच्छी तरह से 'google' प्रावधान है कि जरूरत है। ऐसा लगता है कि आपने कहीं से कोड कॉपी किया है। क्या आप एक लिंक पोस्ट कर सकते हैं? –