Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 20.10.2021, 17:22
Интересующийся
Отправить личное сообщение для mishgan Посмотреть профиль Найти все сообщения от mishgan
 
Регистрация: 25.04.2012
Сообщений: 20

Удаление слоя в leaflet
Написал функцию для кнопки для включения/выключения слоя на карте. Функция добавляет слой на карту но не хочет его убирать. Не работает строчка map.removeLayer(arrOpenLayer[sloy]); Подскажите что я делаю не так.
var arrOpenLayer = new Array();

function showLayerBtn(sloy) {

  if (arrOpenLayer[sloy]==undefined) {
	   fetch(sloy)
                .then(res => res.text())
                .then(kmltext => {
                    const parser = new DOMParser();
                    const kml = parser.parseFromString(kmltext, 'text/xml');
                    const track = new L.KML(kml);
                    arrOpenLayer[sloy] = map.addLayer(track);
      		    const bounds = track.getBounds();
		    map.fitBounds(bounds);
                });
  } else {
	 map.removeLayer(arrOpenLayer[sloy]); 
	 arrOpenLayer[sloy]=undefined;
  }
Ответить с цитированием
  #2 (permalink)  
Старый 21.10.2021, 12:05
Аватар для destus
Профессор
Отправить личное сообщение для destus Посмотреть профиль Найти все сообщения от destus
 
Регистрация: 18.05.2011
Сообщений: 1,207

mishgan,
map.addLayer тебе вернет map, а не добавленный слой (https://leafletjs.com/reference-1.7.1.html#map-addlayer), поэтому на 12 строке ты в массив добавляешь инстанс карты.
const track = new L.KML(kml);
arrOpenLayer[sloy] = track;
map.addLayer(track);
Ответить с цитированием
Ответ


Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удаление элементов массива у другого массива _marisha Общие вопросы Javascript 8 31.03.2020 07:19
Leaflet JS - проверка слоя на совпадение с переменной PC_Principal Javascript под браузер 0 23.11.2018 15:08
Удаление всех   из текста (поиск и удаление любого слова из текста) Stenli jQuery 5 28.06.2017 19:47
автоматическое удаление скоупа директивы при удаление dom узла FanAizu Angular.js 0 25.08.2015 21:38
Неправильно работает перетаскивание слоя Enters Internet Explorer 2 16.06.2011 10:24