Size: a a a

Vue.js Russian Developers Community

2020 August 15

РМ

Рафаил Мамедов... in Vue.js Russian Developers Community
Дмитрий
Просто сейчас структура компонентов такая:
Компонент UserDataProvider, path: '/'
В нем идет проверка, если токен есть в локал сторадж и юзера нету в  store, то мы его фетчим.
И все роуты приложения находятся в children у UserDataProvider.
UserDataProvider:
path: '/',
children: [ all routes ]
И мне подсказали делать проверку в этом компоненте, если сервер возвращает ошибку 401, то редиректим на логин страницу, но так будет работать только если юзер перезагрузит страницу, если он ее не перезагрузит, то все данные остануться, но оперировать он ими не сможет
В Nuxt такие вопросы решены идеально. Советую либо использовать его, либо присмотреться к тому, как в нем это реализуется.
источник

Д

Дмитрий in Vue.js Russian Developers Community
Это понятно, что если место хранения токена будет другое, то надо будет переписывать.
Предлагал еще как только начинали проект, делать проверку в роутере через beforeEach.
источник

Д

Дмитрий in Vue.js Russian Developers Community
Через интерцепторы получилось сделать в принципе.
источник

СР

Сергей Рыжков... in Vue.js Russian Developers Community
Дмитрий
Это понятно, что если место хранения токена будет другое, то надо будет переписывать.
Предлагал еще как только начинали проект, делать проверку в роутере через beforeEach.
В принципе выше ясно и правильно объяснили. Сделай отдельный модуль (сервис) типа AuthService, в котором будет жить логика щалогинить, разлогинить, а залогинен ли, а имеет ли роль итд. Данный сервис уж сам решит где ему что хранить (в сторе, куках, локалсторедж итд). Интеросептор аксиоса-это всего лишь транспорт, завтра ты перейдешь на fetch,... а сервис главный и единый 👍
источник

Д

Дмитрий in Vue.js Russian Developers Community
Сергей Рыжков
В принципе выше ясно и правильно объяснили. Сделай отдельный модуль (сервис) типа AuthService, в котором будет жить логика щалогинить, разлогинить, а залогинен ли, а имеет ли роль итд. Данный сервис уж сам решит где ему что хранить (в сторе, куках, локалсторедж итд). Интеросептор аксиоса-это всего лишь транспорт, завтра ты перейдешь на fetch,... а сервис главный и единый 👍
Да, есть такой сервис
источник

EU

Egor Urvanov in Vue.js Russian Developers Community
Привет. емного не потеме. Но не нашёл чатика чисто по js. Кто-нибудь с тильдой работал? Как в блоке html обратиться к форме, например?
источник

D

DS_PRO in Vue.js Russian Developers Community
Egor Urvanov
Привет. емного не потеме. Но не нашёл чатика чисто по js. Кто-нибудь с тильдой работал? Как в блоке html обратиться к форме, например?
источник

ab

alligator blood in Vue.js Russian Developers Community
я новичок. вопрос: как правильнее всего обратиться к DOM? у меня сейчас querySelector, нашёл информацию через this.$refs.name. Насколько правильный метод? И есть ли аналогии?
источник

D

DK in Vue.js Russian Developers Community
alligator blood
я новичок. вопрос: как правильнее всего обратиться к DOM? у меня сейчас querySelector, нашёл информацию через this.$refs.name. Насколько правильный метод? И есть ли аналогии?
не работай руками с домом, только через рефы
источник

ab

alligator blood in Vue.js Russian Developers Community
DK
не работай руками с домом, только через рефы
то есть, querySelector отпадает в любом случае?
источник

KA

Kenan Ayvazov in Vue.js Russian Developers Community
alligator blood
то есть, querySelector отпадает в любом случае?
Да
источник

ab

alligator blood in Vue.js Russian Developers Community
а в чём проблема работать напрямую с домом? не осведомлён
источник

J

Jakhongir in Vue.js Russian Developers Community
Это что у вас за кейсы, что приходится напрямую работать с домом?
источник

W

Whoisyourdaddy in Vue.js Russian Developers Community
alligator blood
а в чём проблема работать напрямую с домом? не осведомлён
вью делает всю работу с домом
источник

W

Whoisyourdaddy in Vue.js Russian Developers Community
ты пишешь логику
источник

ab

alligator blood in Vue.js Russian Developers Community
Jakhongir
Это что у вас за кейсы, что приходится напрямую работать с домом?
перевожу с хтмл/ксс на вуе, решил попрактиковаться
источник

ab

alligator blood in Vue.js Russian Developers Community
а точнее на nuxt
источник

J

Jakhongir in Vue.js Russian Developers Community
alligator blood
перевожу с хтмл/ксс на вуе, решил попрактиковаться
Так не надо трогать дом. Вю сам все сделает.
источник

D

DK in Vue.js Russian Developers Community
alligator blood
а точнее на nuxt
с ним тем более
источник

ab

alligator blood in Vue.js Russian Developers Community
чувствую, много тонкостей такого вида надо будет изучить
источник