Size: a a a

Nuxt.js — русскоговорящее сообщество

2020 December 21

V💊

Vladimir 💉 💊 Voytenk... in Nuxt.js — русскоговорящее сообщество
на самом деле половина проблемы решается на бэке
источник

DM

Danil Mogilniy in Nuxt.js — русскоговорящее сообщество
Vladimir 💉 💊 Voytenko
v-if is Admin or SuperAdmin show deleteAllBtn in computed :)
Гениально)
источник

NK

Nikolay Koshkarev in Nuxt.js — русскоговорящее сообщество
Danil Mogilniy
Это ок)

Но как быть с тем, что некоторые элементы интерфейса могут быть доступны для нескольких групп пользователей? Например, кнопка должна быть доступна только для суперадмина и админа, а для модератора и контенщика нет
Может как-то можно упростить кучу проверок в v-if
Вынести проверки в computed
источник

DM

Danil Mogilniy in Nuxt.js — русскоговорящее сообщество
Vladimir 💉 💊 Voytenko
на самом деле половина проблемы решается на бэке
На бэке есть проверки естественно
Но не хочется лишние запросы слать, если мы все равно знаем, что у текущего пользователя нет прав
источник

V💊

Vladimir 💉 💊 Voytenk... in Nuxt.js — русскоговорящее сообщество
Danil Mogilniy
На бэке есть проверки естественно
Но не хочется лишние запросы слать, если мы все равно знаем, что у текущего пользователя нет прав
я не об этом, просто бэк должен присилать список прав пользователя, а на фронте делать уже что-то вроде if hasPerm('delete_all')
источник

DM

Danil Mogilniy in Nuxt.js — русскоговорящее сообщество
Vladimir 💉 💊 Voytenko
я не об этом, просто бэк должен присилать список прав пользователя, а на фронте делать уже что-то вроде if hasPerm('delete_all')
Что ты имеешь ввиду под списком прав? Перечень всех возможностей пользователя?
источник

V💊

Vladimir 💉 💊 Voytenk... in Nuxt.js — русскоговорящее сообщество
Danil Mogilniy
Что ты имеешь ввиду под списком прав? Перечень всех возможностей пользователя?
именно список всех прав и имею

http /api/v1/user/permissions/1/

json
[
'candelete',
'canedite',
can....
источник

AD

Aleksey Dorogov in Nuxt.js — русскоговорящее сообщество
Danil Mogilniy
Это ок)

Но как быть с тем, что некоторые элементы интерфейса могут быть доступны для нескольких групп пользователей? Например, кнопка должна быть доступна только для суперадмина и админа, а для модератора и контенщика нет
Может как-то можно упростить кучу проверок в v-if
Можно сделать директиву просто которая в зависимости от роли юзера будет удалять ноду в доме
источник

AD

Aleksey Dorogov in Nuxt.js — русскоговорящее сообщество
В шаблоне пишите например v-user или v-admin и тд это удобная замена v-if
источник

NK

Nikolay Koshkarev in Nuxt.js — русскоговорящее сообщество
Если есть чёткая (пацанская :) ) иерархия прав, т.е. все что доступно пользователю , доступно админу, то либо через глобальный миксин, либо черезопшинсы завёл свойства isUser, isAdmin и в нужном месте v-if=isUser
источник

NK

Nikolay Koshkarev in Nuxt.js — русскоговорящее сообщество
Aleksey Dorogov
Можно сделать директиву просто которая в зависимости от роли юзера будет удалять ноду в доме
Так ещё лучше
источник

DM

Danil Mogilniy in Nuxt.js — русскоговорящее сообщество
Nikolay Koshkarev
Если есть чёткая (пацанская :) ) иерархия прав, т.е. все что доступно пользователю , доступно админу, то либо через глобальный миксин, либо черезопшинсы завёл свойства isUser, isAdmin и в нужном месте v-if=isUser
В этом и кроется проблема, что четкой иерархии нет
источник

DM

Danil Mogilniy in Nuxt.js — русскоговорящее сообщество
Если бы она была, то через v-if все прекрасно бы работало
источник

NK

Nikolay Koshkarev in Nuxt.js — русскоговорящее сообщество
Danil Mogilniy
В этом и кроется проблема, что четкой иерархии нет
Попытаться разделить на группы isUserAndAdmin isUserAndGuest
источник

DM

Danil Mogilniy in Nuxt.js — русскоговорящее сообщество
Vladimir 💉 💊 Voytenko
именно список всех прав и имею

http /api/v1/user/permissions/1/

json
[
'candelete',
'canedite',
can....
Идея, возможно, хорошая, но, к сожалению, бэк со своей стороны не сможет это реализовать
источник

AD

Aleksey Dorogov in Nuxt.js — русскоговорящее сообщество
Danil Mogilniy
В этом и кроется проблема, что четкой иерархии нет
Ну можно ещё использовать if и write/read а может юзер читать или писать - храните в сторе, по апи загружайте его права)
источник

AD

Aleksey Dorogov in Nuxt.js — русскоговорящее сообщество
Так middleware и работает..
источник

AD

Aleksey Dorogov in Nuxt.js — русскоговорящее сообщество
В nuxt наверно плагин можно написать, если никто ещё не сделал
источник

DM

Danil Mogilniy in Nuxt.js — русскоговорящее сообщество
Спасибо всем за советы и предложения
источник

AL

Andrey Lunar in Nuxt.js — русскоговорящее сообщество
Коллеги, можно как то запустить параллельный запуск vuex actions внутри нового fetch? Задача: кинуть несколько запросов к разным апи, и отображать результаты по мере получения, без ожиданий
источник