Какое лучшее решение для хранения идентификатора пользователя? - PullRequest
0 голосов
/ 20 февраля 2019

Каков наилучший способ хранения идентификатора пользователя в ReactJS, чтобы все компоненты имели к нему доступ?

Я рассмотрел Redux и Context, но они кажутся чрезмерными из-за простого хранения идентификатора (или может я чего то упускаю?).Я также посмотрел на сохранение идентификатора в родительском компоненте (App), но обновления страницы теряют идентификатор: (.

Ответы [ 2 ]

0 голосов
/ 20 февраля 2019

Если вы хотите, чтобы ваши данные были доступны даже после закрытия и повторного открытия браузера, LocalStorage - подходящее место для их хранения;В противном случае SessionStorage хранит ваши данные, пока открыт браузер.

0 голосов
/ 20 февраля 2019

Сеансовое хранилище, вероятно, лучше всего соответствует вашим потребностям

Свойство sessionStorage позволяет получить доступ к объекту хранилища сеанса для текущего источника.sessionStorage похож на localStorage;единственное отличие состоит в том, что если данные, хранящиеся в localStorage, не имеют срока действия, данные, хранящиеся в sessionStorage, очищаются по окончании сеанса страницы.

https://developer.mozilla.org/en-US/docs/Web/API/Window/sessionStorage

Затем можно установить / получитьидентификатор, когда вам нужно

sessionStorage.setItem('userID', 'value');
const USER_ID = sessionStorage.getItem('userID');

Однако, чтобы сохранить идентификатор даже после закрытия страницы, вам нужно будет использовать localStorage

Свойство localStorage, доступное только для чтения, позволяет вамполучить доступ к объекту хранения для происхождения документа;сохраненные данные сохраняются между сеансами браузера.localStorage аналогичен sessionStorage, за исключением того, что, хотя данные, хранящиеся в localStorage, не имеют срока действия, данные, хранящиеся в sessionStorage, очищаются по окончании сеанса страницы, то есть при закрытии страницы.

https://developer.mozilla.org/en-US/docs/Web/API/Window/localStorage

localStorage.setItem('userID', 'value');
const USER_ID = localStorage.getItem('userID');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...