Переменные не доступны на коммутаторе - PullRequest
0 голосов
/ 16 октября 2019

Переменные start и end недоступны внутри другого корпуса переключателя. Но должно быть.

Код



for (let key in filters) {
            let obj = filters[key];
            if (!filters.hasOwnProperty(key) || obj === '' || obj.length === 0) {
                continue;
            }
            let start;
            let end;
            switch (key) {
                case "datum_van": {
                    start = new Date(obj);
                    break;
                }
                case "datum_tot": {
                    end = new Date(obj);
                    break;
                }
                case "dateVal": {
                    filteredRoutes = filteredRoutes.filter(tocht => {
                        let date = this.parseJsonDate(tocht.datum_van);
                        switch (obj) {
                            case 0: return date >= start && date <= end;
                            case 1: return date >= start;
                            case 2: return date <= end;
                        }
                    });
                    break;
                }

1 Ответ

0 голосов
/ 16 октября 2019

Я обнаружил проблему, это связано с тем, что start и end недоступны на исправленном case "dateVal", поместив мои let start; и let end; вне цикла for.

Вот так:

let start;
let end;
for (let key in filters) {
...
}

вместо:

for (let key in filters) {
let start;
let end;
...
}
...