ошибка «T is undefined» при попытке перебрать массив слоев для добавления в веб-карту - PullRequest
0 голосов
/ 07 ноября 2019

Хорошо, я создал страницу с 8 слоями геойсона и 8 слоями маркеров. У меня так, один слой геойсона и один маркер за раз запускаются кнопкой на странице. Одновременно может отображаться только один слой геоджона и один слой маркера, так как я использовал цикл для удаления всех остальных слоев.

Я также добавил функцию resetMap, которая соответствует кнопке на странице, которая перебирает массив всех слоев и удаляет их с карты, если они отображаются.

Теперь япытаясь создать функцию showAllLayers, которая соответствует другой кнопке на странице, которая будет отображать все мои слои, просматривая массив всех моих слоев, и отображать их, если они еще не выполнены, но это просто не работает !!

Функция выглядит следующим образом:

function showAllLayers() {

        let layers = [Frog1Layer, Frog2Layer, Frog3Layer, Frog4Layer, Frog5Layer, Frog6Layer, Frog7Layer, Frog8Layer,
        Frog1Marker, Frog2Marker, Frog3Marker, Frog4Marker, Frog5Marker, Frog6Marker, Frog7Marker, Frog8Marker]

        for (let i = 0; i < layers.length; i++) {
        map.addLayer(layers[i]);
        }
    }

ошибка в консоли выглядит следующим образом:

TypeError: t is undefined4 leaflet.js: 5: 64519 addLayerhttps://unpkg.com/leaflet@1.5.1/dist/leaflet.js:5 файл showAllLayers: /// F: / Оценка ГИС 1 / MyScript.js: файл onclick 523: /// F: / Оценка ГИС 1 / ATTEMPT01.html: 1

так что, похоже, проблема в функции addLayer.

Каждый из моих слоев задан как глобальная переменная и выглядит следующим образом:

Frog1Layer = L.geoJson(Frog1, { 
                    style: {
                        weight:         0.5,
                        color:          'white',
                        fillOpacity:    1,
                        fillColor:      'red',
                    }

Frog1Marker = L.marker([9.706891,-83.667942],

Может кто-нибудь понять, что не так? Я был озадачен этим целую вечность, так как другие мои массивы работают нормально, но каждый способ, которым я пытался использовать функцию addLayer, чтобы показать все свои слои сразу, вызывает эту ошибку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...