[PROMOÇÃO] Assine com + 30% de desconto ANUAL MENSAL (últimas horas)
Fabricio Peixoto
Criador Fabricio Peixoto 01/06/2023

Estou tentano dentro do codigo que ja esta pronto do curso bloquear o sistema ate que um campo do bango seja atualizado pelo Cliente.
O cliente loga ele passa pelo Middleware  de rota criado no sistema mas se essa flag que vem da API for falsa o sistema tem que prende-lo na tela de atualizaçao. 

Manager Carlos Ferreira 01/06/2023

Olá, Fabricio!
Tudo bem?

Só confirma para mim, sua ideia é quando um usuário estiver fazendo uma operação de banco de dados, o banco dê um lock e não permita outras operações, isso mesmo?
Não é possível fazer dessa forma, porque cada request nova (em cim do protocolo http) é um state novo, e o protocolo http não armazena estado, ou seja, uma request não tem nada a ver com a outra.

Carlos Ferreira
Criador Fabricio Peixoto 01/06/2023

No curo se eu entendi certinho as nossas rotas sempre são testadas aqui:

rrouter.beforeEach(async (to, from, next) => {
    const loggedIn = store.state.users.loggedIn

    if (to.name != 'reset.password' && !loggedIn) {

        const token = await localStorage.getItem(TOKEN_NAME)

        if (!token && to.name != 'auth' && to.name != 'forget.password') {

            return router.push({name: 'auth'})
        }

        await store.dispatch('getMe')
            .catch(() => {
                if (to.name != 'auth') return router.push({name: 'auth'})
            })
    }

    next()
})outer.beforeEach(async (to, from, next) => {})

Aqui e feito uma verificação para so depois passar para rota solicitada caso haja o token e se não estivermos na roda setada na logica.

Minha ideia e fazer exatmamente isso mas quero que ele teste a condição de uma informação ja armazenada no localStorage. E se essa condição for falsa e o usuario não estiver nas rotas da logica que são as de autenticação conforme exemplo ele seja redirecionado para uma outra rota.
Que obrigue ele a fazer a atualização do seu cadastro.

Eu tento recuperar essa informação assim: 

const active = store.state.users.me.ativo

E tento fazer a logica so que ele me retorna vazio. no exemplo o loggeIn retorna valor.

 

 

 

Fabricio Peixoto
Manager Carlos Ferreira 01/06/2023

Ah sim, eu não li o tópico (qual aula era) e te respondi errado, me desculpe amigo.

--

Compartilha comigo o seu código (pelo GitHub), que te ajudo a resolver.

Carlos Ferreira
Sabe a Solução? Ajude a resolver!

Precisa estar logado para conseguir responder a este ticket!

Clique Aqui Para Entrar!