Как отфильтровать данные по диапазону дат на mapbox GL JS? - PullRequest
1 голос
/ 21 февраля 2020

У меня есть некоторые трудности для реализации этого фильтра в mapboxGL- js

У меня есть векторный слой листов, который имел некоторую особенность, которая включает в себя 2 свойства: 2 даты, startdate1 и enddate1 в строке со следующим форматом гггг -mm-dd Я хотел бы отфильтровать только те функции, которые находятся между моим указанным c диапазоном дат, startDate2, endDate2 с тем же форматом

Как я могу получить date1 и date2, чтобы вызвать javascript функция Date.parse (date1) для того, чтобы сравнить его с моей startDate?

Id 'хотел бы применить следующее условие в моем фильтре для поддержки только функций

Date.parse(startdate1)<= Date.parse(enddate2)  AND  Date.parse(enddate1) >= Date.parse(startdate2) 

Спасибо за вашу помощь!

1 Ответ

0 голосов
/ 17 апреля 2020

Лучший способ справиться с этим - преобразовать дату в метку времени (секунды с начала эпохи). Тогда вы можете использовать фильтр

[
     "all",     
    [">=", ['get', 'startDate1'], startDate2],
    ["<=", ['get', 'endDate1'], endDate2]
]
...