Как загрузить в ObjectManager несколько файлов Json?
Имеется несколько файлов с геоданными вида Json. Загружаю их при помощи следующего кода в js:
$.getJSON('data_obj.json')
.done(function (geoJson) {
objectManager.add(geoJson);
});
$.getJSON('data.json')
.done(function (geoJson) {
objectManager.add(geoJson);
});
$.getJSON('data_osv.json')
.done(function (geoJson) {
objectManager.add(geoJson);
map.geoObjects.add(objectManager);
});
Объекты на карте отображаются, но не все. Как правильно в js прописать ассинхронную загрузку геоданных, чтобы все объекты выводились на карте?
Ответы (1 шт):
Автор решения: teran
→ Ссылка
Если вы на карту надо добавить результат трех вызовов, то и добавляйте их после третьего. То есть подсчитайте, что все три завершились.
let cc = 0;
function updateMap(geoJson){
objectManager.add(geoJson);
if(++cc == 3){
map.geoObjects.add(objectManager);
}
}
$.getJSON('data_obj.json', updateMap);
$.getJSON('data.json', updateMap);
$.getJSON('data_osv.json', updateMap);