Я работаю с API Javascript Google Maps уже несколько недель. У меня возникли проблемы с доступом к свойствам geoJSON после того, как он был добавлен на карту и станет функцией карты.API Google Maps Javascript API явно обладает свойствами свойства GeoJSON
Например, предположим, что у меня есть этот пример GeoJSON
var geo = {"type":"FeatureCollection","features":[
{"type":"Feature","id":"country","properties":
{"name":"ExampleCountry"},"geometry": {exampleGeometry}}
]};
позволяет сказать, что я загружаю GeoJSON и хотите получить доступ к свойству идентификатору функции я только что добавили. Ни feature.id
, ни feature.getProperty('id')
не работают в этом случае. От отладки я узнал, что я могу получить доступ к свойству «id» через feature.F
. Это решение работало нормально в течение нескольких недель, но по какой-то причине на прошлой неделе оно перестало работать. Вместо этого я должен использовать feature.K
для доступа к свойству ID.
var mapOptions = {
center: { lat: -34.397, lng: 150.644},
zoom: 8
};
map = new google.maps.Map(document.getElementById('map-canvas'), {mapOptions});
map.data.loadGeoJson(geo);
map.data.forEach(function(feature) {
//Used to Work, randomly stopped working last week (feature.F is undefined)
var id = feature.F;
//New Solution
var id = feature.K;
});
Это не похоже на постоянное решение. Кто-нибудь знает, как это могло произойти?
** Не используйте недокументированные свойства API, они могут и могут меняться при каждом выпуске **. Используйте документированные функции. – geocodezip
Просьба предоставить [Минимальный, завершенный, проверенный и читаемый пример] (http://stackoverflow.com/help/mcve), который демонстрирует проблему. – geocodezip
Что бы вы предложили вместо этого? – theBoarialist