В документах Google Maps JS, пример для службы высот (короче) делает это:
var elevator = new google.maps.ElevationService
elevator.getElevationForLocations({
'locations': [location]
}, function(results, status) {
... etc
})
но в Typescript (используя "@types/googlemaps": "3.30.19"
) яполучить немного странности.Во-первых, вместо ожидаемого google.maps.ElevationService.getElevationForLocations()
я должен использовать google.maps.ElevationService.prototype.getElevationForLocations()
.Во-вторых, и главная проблема, с которой я столкнулся, это то, что я не могу получить доступ к google.maps.LocationElevationRequest
.В файле наборов я вижу это:
, но в моем коде при попытке google.maps.LocationElevationRequest
я получаю сообщение об ошибке Property 'LocationElevationRequest' does not exist on type 'typeof maps'.
Нет количествапроизвольная вставка prototype
тоже работает.Это дыра в наборе? Этот комментарий от нескольких лет назад утверждает, что он учитывается.
Обновление # 1
Я использую google.maps.PolygonOptions
вдругие места, аналогичные интерфейсу LocationElevationRequest
:
declare namespace google.maps {
...
export interface PolygonOptions {
/**
* Indicates whether this Polygon handles mouse events. Defaults to true.
*/
clickable?: boolean;
...
}
export interface LocationElevationRequest {
locations: LatLng[];
}
}