Как сохранить массив в хранилище сессий? - PullRequest
0 голосов
/ 06 января 2020

Я прочитал несколько похожих тем, но решения не работают для меня. На странице, над которой я работаю, есть фильтры для галереи изображений. Каждый раз, когда я щелкаю по фильтру изображения с перезагрузкой в ​​соответствии с этим фильтром через файл JSON.

Если я хочу применить несколько фильтров, мне понадобятся те, которые были выбраны до перезагрузки, чтобы сохранить их в массиве. переменная.

Это код, который у меня есть для этого

let filterArray = []

sessionStorage.setItem('filterArray', JSON.stringify(filterArray))

let savedArr = JSON.parse(sessionStorage.getItem('filterArray'))

Сейчас у меня не настроена перезагрузка страницы, но после нажатия на фильтр и обновления страницы я ожидаю чтобы иметь возможность регистрировать переменную «saveArr», но когда я это получаю, я получаю следующее:

Uncaught ReferenceError: saveArr не определено в: 1: 13

1 Ответ

0 голосов
/ 06 января 2020

Вы не можете войти в систему savedArr после обновления sh страницы, вам необходимо переопределить ее.

Данные в хранилище сеансов сохранятся, но объявления переменных не будут.

После перезагрузки страницы снова вызовите строку объявления, и вы получите доступ к данным.

let savedArr = JSON.parse(sessionStorage.getItem('filterArray'))

...