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

Função não deleta foto

Quando troquei a função $http.delete() porrecursoFotos.delete({fotoId:foto._id}, function(){}) e clico no botão remover, a imagem desaparece, como esperado, mas quando atualizo a tela, percebe-se que ela não foi deletada realmente. Se houve animação, podemos assumir que a função delete() retornou sucesso, porém isso não ocorre.

Aqui está minha função remover:

$scope.remover = function(foto){

        recursoFotos.delete({fotoId : foto._id}, function(){
            var indiceFoto = $scope.fotos.indexOf(foto);
            $scope.fotos.splice(indiceFoto,1);
            $scope.mensagem = "Foto " + foto.titulo + " removida com sucesso";
        }, function(erro){
                console.log(erro);
                $scope.mensagem = "Não foi possível remover a foto " + foto.titulo;
        });
    };
3 respostas

Fala ai Antônio, tudo bem? Olhando os códigos, parece que esta tudo correto.

Consegue compartilhar os códigos do recurso? Talvez o problema pode estar nele.

Tente também inspecionar se a requisição foi feita para o back com as informações corretas, ou seja, foi feita com o verbo DELETE, enviou os dados necessários e teve uma resposta de sucesso.

Para fazer isso você pode abrir o console do navegador e navegar até a aba Network (Rede), uma vez estando nessa aba, limpa todas as requisições já feitas e clique no botão para deletar a foto, uma nova linha deve ser logada referente a requisição de remoção.

Outro detalhe: Vi que está fazendo o curso de AngularJS, tem algum motivo específico para isso? Pergunto porque essa versão não está mais sendo mantida e foi descontinuada pela Google.

Aqui na Alura temos um curso referente a nova versão do framework:

  • https://cursos.alura.com.br/course/angular-fundamentos
  • https://cursos.alura.com.br/course/angular-autenticacao
  • https://cursos.alura.com.br/course/angular-upload-build
  • https://cursos.alura.com.br/course/angular-lapidando-projeto

Espero ter ajudado.

solução!

Já consegui resolver o problema meio que sem querer. Mas obrigado pela resposta.

Estou fazendo por causa de um projeto que comecei a fazer, que está sendo usado o AngularJS.

Boa Atnônio, fico feliz que tenha resolvido o problema.

Sempre que precisar não deixe de criar suas dúvidas.

Abraços e bons estudos.