Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Deletando mais de um elemento

Eu fiz um post antes de deletar e ficaram 3 elementos, mas quando eu deletei, apagou o elemento 2 e 3, depois eu encerrei e reiniciei o servidor e funcionou, porque isso aconteceu?.

import express from "express";


const app = express();


app.use(express.json())


const livros = [
    {id:1, "titulo":"Senhor dos Aneis"},
    {id:2, "titulo":"O Hobbit"}
]


app.get('/', (req,res) => {
    res.status(200).send('Curso de Node')
})


app.get('/livros', (req,res) => {
    res.status(200).json(livros)
})


app.get('/livros/:id', (req,res) => {
    let index = buscaLivro(req.params.id);
    res.json(livros[index])
})


app.post('/livros', (req,res) => {
    livros.push(req.body);
    res.status(201).send('Livro foi cadastrado com sucesso!');
})


app.put('/livros/:id', (req,res) => {
    let index = buscaLivro(req.params.id);
    livros[index].titulo = req.body.titulo;
    res.json(livros)
})


app.delete('/livros/:id', (req,res) => {
    let {id} = req.params;
    let index = buscaLivro(id);
    livros.splice(index,1);
    res.send(`Livro ${id} removido com sucesso`);
})


function buscaLivro(id) {
    return livros.findIndex(livro => livro.id == id)
}


export default app
1 resposta
solução!

Oi, Gisele, tudo bem? Nos desculpe a demora a responder.

Como você o código que você postou é o mesmo que funcionou, é difícil saber o que realmente aconteceu antes de você reiniciar o servidor. Talvez seu arquivo ainda não estivesse salvo com as alterações necessárias ou, por algum motivo, o servidor não tinha reiniciado automaticamente quando você salvou o arquivo, e só funcionou quando você reiniciou manualmente.

Você pode aproveitar para conferir se o Nodemon realmente está reiniciando o servidor corretamente de acordo com as modificações nos arquivos do seu projeto.

Abraços e bons estudos!