Angularサービスがあり、型付き配列でpromiseを返したいのですが、常に次のエラーが発生します:src / app / city.service.ts(52,22):エラーTS2339:プロパティ 'places'が存在しませんタイプ「CityService」。何が間違っているのかわかりません。
getPlace(coordinates : Coordinates) {
// var places : Array<Place> = [];
let promise = new Promise((resolve, reject) => {
this.http.get('http://localhost:3000/api/place/', {params: coordinates})
.toPromise()
.then(
res => { // Success
var places: Array<Place>;
this.places = res.results.map(item => {
var place = new Place();
place.place_id = item.place_id;
place.name = item.name;
place.vicinity = item.vicinity;
place.coordinates = new Coordinates();
place.coordinates.latitude = item.geometry.location.lat;
place.coordinates.longitude = item.geometry.location.lng;
return place;
});
resolve(this.places);
},
msg => { // Error
reject(msg);
}
);
});
return promise;
}
したがって、コメントはかなり正しいです。サービスの一部ではなく、関数内で宣言された変数は、このキーワードなしで呼び出す必要があります。
places = res.results.map ....
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加