Ich möchte die Verwendung von <any>
in meinem Typoskript angularjs Code vermeiden. Deshalb würde ich gerne wissen, ob jemand weiß, welcher Klassentyp für die $ http get/post/etc verwendet werden soll. Antwort?
Beispiel: Stück Code Im folgenden möchte ich die <any>
mag Klasse
search() {
this.$http.get('https://maps.googleapis.com/maps/api/geocode/json', {params: {address: this.$scope.searchTerm}})
.success((response: any) => {
this.$scope.results = response.results;
}).error((response: any) => {
console.error("Error calling the server");
});
};
PS statt eingegeben werden:..
$ this scope = MyScopeInterface und diese $ scope.results = Google. maps.GeocoderResult
Ich schreibe und kompiliere meinen Code in Webstorm. Scheint, dass dieser Compiler den Rückgabetyp nicht bestimmen kann (Fehler: (77, 40) TS2339: Eigenschaft 'Ergebnisse' existiert nicht für den Typ '{}'.). Immer noch versuchen, dann in meinem Fall, um herauszufinden, was soll sein (?) –
'IHTTPPromise' erstreckt 'iPromise >' was bedeutet, dass es ein Versprechen ist eine HTTP-Antwort arg enthält, die selbst einige Daten 'enthält, ist ' als die Nutzlast. '' ist der Typ dieser Nutzlast, also alles, was vom Server zurückgegeben wird. [Die Geocodierungs-API-Seite] (https://developers.google.com/maps/documentation/geocoding/intro#GeocodingResponses) enthält eine Beispiel-JSON-Antwort. Sie könnten eine Schnittstelle erstellen, die mit diesem Objekt übereinstimmt, oder eine andere Person, die sich bereits in einer Geocodierungszugriffsbibliothek befindet. –
Paarth
ich es tat, löste mein Problem: '/// Modul Dienste { Export-Schnittstelle IGeocoder { Ergebnisse: google .maps.GeocoderResult []; Status: google.maps.GeocoderStatus; } } ' –