Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

O que faz "resp.status(200).end()" e porque remove atualiza o view

Na aula o professor mostrou esse código

  app.delete('/livros/:id', function (req, resp) {

    const id = req.params.id;
    const livroDao = new LivroDao(db);
    livroDao.remove(id)
      .then(() => resp.status(200).end())
      .catch(erro => console.log(erro));

  });

Ele citou esta parte "resp.status(200).end()" e disse que ja vimos muito isso..rsrs. Mas acho que ele nunca falou nas aulas. Pelo menos na publicada.

Poderia me explicar o que ela faz?

o DAO remove, remove a linha apenas da DB, nao do View em tela. Porque o view atualiza? Pensei que ao deletar o livro da DataBase, o código deveria redirecionar novamente prara "/livros", para poder recarregar os livros dispostos na página.

2 respostas
solução!

Oi Vinicius tudo bem?

Entao cara, é o curso do prof Gabriel Leite? Acredito que a View atualize automaticamente por ter algum tipo de função de state. Que é disparada uma nova renderização do contéudo que está sendo exibido caso haja alguma alterção, seja ela de exclusão ou inclusão. Neste caso o de remover.

Quanto ao resp.status(200).end() ele está devolvendo uma resposta com o status 200, que é um status do protocolo http que retorna um OK. E em seguida o end(), ele finaliza a resposta sem qualquer tipo de retorno. Dessa forma ele está apenas finalizando a operação.

Para redirecionamento da página, deve fazer algo do tipo app.get('/livros', (req, res) => { res.redirect('/rotaDesejadaAqui'); });

Espero ter ajudado! Se eu estiver errado me corrijam por favor rs! tmj!

Entao cara, é o curso do prof Gabriel Leite?

Isso mesmo. Curso dele.

Acredito que a View atualize automaticamente por ter algum tipo de função de state.

Percebi que o Js de remocao faz a remocao tanto da DB quanto da tabela em tela. Entao esta resolvido. Obrigado.