Olá a todos. Não sei se alguém teve o mesmo problema ao tentar cadastrar fotos no exercício proposto, mas vou tentar explicar o passo a passo.
No meu cadastro.component.ts, quando executei o seguninte trecho de codigo:
this.http.post('v1/fotos', JSON.stringify(this.foto), { headers: headers })
.subscribe(() => {
this.foto = new FotoComponent();
console.log('Foto salva com sucesso');
}, erro => console.log(erro));
Recebi a mensagem "Foto salva com sucesso" no log.
Entretanto, quando voltei para a listagem, recebi o seguinte erro no pipe que filtrava as fotos por título: "TypeError: Cannot read property 'toLocaleLowerCase' of undefined"
Verificando no endpoint "v1/fotos", percebi que o minhas fotos estavam sendo salvas no banco somente com a propriedade "_id" preenchida. Sendo assim, nada mais natural do que esse erro acontecer, uma vez q a foto não foi efetivamente salva.
Para corrigir o problema, retirei a serialização através do:
De:
this.http.post('v1/fotos', JSON.stringify(this.foto), { headers: headers })
Para:
this.http.post('v1/fotos', this.foto, { headers: headers })
E então tudo passou o funcionar corretamente.
Entretanto o banco de dados ficou "sujo" com os dados salvos com erro anteriormente, o que continua acarretando problemas na hora de exibição da listagem.
Existe uma maneira de apagar esses registros ou até mesmo recriar o banco criado pelo node??
Agradeço desde já pela atenção.
Anderson