Vue: Как использовать localStorage с vue?

Созданный на 16 дек. 2015  ·  3Комментарии  ·  Источник: vuejs/vue

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

У меня есть миксин isLoggedIn(), который возвращает true, если элемент присутствует в localStorage, и false, если его нет.
Мой вопрос: как я могу переоценить состояние, когда я обновляю или удаляю элемент из localStorage, потому что у меня есть некоторые элементы, отображаемые только в том случае, если isLoggedIn имеет значение true?

И правильно ли использовать v-show="isLoggedIn()" или вы могли бы предложить что-то еще, я не знаю, что для этого лучше всего?

Спасибо, парни.

Самый полезный комментарий

Загвоздка здесь в том, что localStorage не является реактивным, поэтому вам нужно что- то реактивное, чтобы инициировать изменения. По сути, вы используете объект для представления состояния входа в систему, и когда вы входите/выходите из системы, вы изменяете localStorage и этот объект вместе (и инициализируете этот объект, читая из localStorage при загрузке приложения).

См. http://vuejs.org/guide/application.html#State_Management .
и https://auth0.com/blog/2015/11/13/build-an-app-with-vuejs/ , который делает именно то, что вы пытаетесь сделать.

Все 3 Комментарий

Загвоздка здесь в том, что localStorage не является реактивным, поэтому вам нужно что- то реактивное, чтобы инициировать изменения. По сути, вы используете объект для представления состояния входа в систему, и когда вы входите/выходите из системы, вы изменяете localStorage и этот объект вместе (и инициализируете этот объект, читая из localStorage при загрузке приложения).

См. http://vuejs.org/guide/application.html#State_Management .
и https://auth0.com/blog/2015/11/13/build-an-app-with-vuejs/ , который делает именно то, что вы пытаетесь сделать.

@ yyx990803 Спасибо, чувак, эта статья — именно то, что я пытаюсь сделать.

Где лучше всего проверить локальное хранилище при инициализации приложения, чтобы убедиться, что пользователь уже вошел в систему из предыдущего сеанса? В упомянутом руководстве у них есть только строка в файле запуска / main.js перед инициализацией Vue. Я сделал что-то подобное . Это рекомендуется?

Была ли эта страница полезной?
0 / 5 - 0 рейтинги