Сбросить переменную на каждом новом сеансе, используя localstorage - PullRequest
0 голосов
/ 13 декабря 2018

Я пытаюсь запустить что-то только один раз в начале пользовательского сеанса, охватывающего несколько страниц.

Я пытался использовать sessionStorage, чтобы проверить, существует ли переменная, которая по умолчанию имеет значение false, но это не таксохраняется в некоторых браузерах из-за перенаправления JavaScript в сценарии:

window.location.href

Есть ли способ имитировать это с помощью localalstorage, который сохраняется более надежно?

т.е. сделать что-то только один раз наначало каждого нового сеанса пользователя.Сеанс может иметь несколько страниц, поэтому одна переменная javascript не будет работать.

update: в соответствии с запросом в комментариях основная логика:

  1. новый открытый сеанс.
  2. перенаправить один раз на последнюю просмотренную страницу.
  3. установить перенаправление на true.чтобы предотвратить это снова.

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

1 Ответ

0 голосов
/ 14 декабря 2018

вы можете проверить, если элемент уже существует или имеет нулевое значение, с помощью: localStorage.getItem("itemname");

Если он не существует (== ноль), это первый «запуск», так что вы можете установить его для предотвращениядальнейшее выполнение цикла.использование: localStorage.setItem("itemname", "notNull");

...