Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Интерактивная карта маршрутов (https://javascript.ru/forum/misc/78416-interaktivnaya-karta-marshrutov.html)

yanpogutsa 10.09.2019 21:12

Интерактивная карта маршрутов
 
Всем привет!
Делаю интерактивную карту маршрутов на базе mapbox

Есть Geojson с маршрутами, атрибут { "ROUTE": "3" }
Есть Geojson с остановками, атрибут { "ROUTE": "3, 10, 15" } номера маршрутов

Задача чтобы при клике на остановку(точку) подсвечивались маршруты, которые через нее проходят:


map.on("click", function(e) {
var features = map.queryRenderedFeatures(e.point, { layers: ["stops"] });
var filter = features.reduce(
function(memo, feature) {
memo.push(feature.properties.ROUTE);
return memo;
},
["in", "ROUTE"]
);

map.setFilter("stopsActive", filter);
map.setFilter("routesActive", filter);
});

На выходе получается значение фильтра:
["in", "ROUTE", "61"]

Если на остановке один маршрут, то все работает идеально, но если маршрутов несколько то ничего не выходит:
["in", "ROUTE", "61, 68, 102"]

Желаемый результат в этом случае: ["in", "ROUTE", "61", "68", "102"] - но как его можно достигнуть? replace не работает из за путаницы с кавычками

laimas 10.09.2019 21:44

Цитата:

Сообщение от yanpogutsa
replace не работает из за путаницы с кавычками

Надо понимать что подразумевается splice?


Часовой пояс GMT +3, время: 19:01.