Angular $ http.delete不会调用我的错误回调函数

时间:2015-10-30 05:53:27

标签: javascript angularjs callback http-delete

好吧,我尝试了一切,但我无法解决问题。我有这个代码,我“强制”我的服务器中的错误,但我的删除函数的回调函数没有调用我的错误回调函数,最奇怪的是我有相同的代码,但在另一个控制器(和服务),它正常工作。

这是我的控制器代码。

function buscaMesas() {
    Mesas.query(
        function(mesas) {
            $scope.mesas = mesas;
        },
        function(erro) {
            console.log(erro);
            $scope.success = false;
            $scope.mensagem = {texto: 'Não foi possível obter a lista'};
        }
        );
    }
    buscaMesas();

    $scope.remove = function(mesa) {
        $scope.mensagem = {texto: ''};
        Mesas.delete({id: mesa._id},
        buscaMesas,
        // here is not called
        function(erro){
            console.log(erro);
            $scope.success = false;
            if (erro.code = 1) {
                $scope.mensagem = {texto: 'Não foi possível remover a mesa pois está vinculado com PEDIDOS!'};
            } else {
                $scope.mensagem = {texto: 'Não foi possível remover a mesa!'};
            }
        }
        );
    };

这是我的服务器端控制器

controller.removeMesa = function(req, res) {
    var _id = sanitize(req.params.id);
    var erro = {};

    Pedido.find({mesa: _id}).exec()
    .then(
        function(pedidos) {
            if (pedidos.toString() == '') {
                Mesa.remove({"_id": _id}).exec()
                .then(
                    function() {
                        res.end();
                    },
                    function(erro) {
                        return console.error(erro);
                    }
                );
            } else {
                // here i send the error
                erro.code = 1;
                return res.status(500).json(erro);
            }
        },
        function(erro) {
            console.error(erro)
            res.status(500).json(erro);
        }
    );
};

这是我的服务

angular.module('tcc').factory('Mesa',
function($resource) {
    return $resource('/mesa/:id');
})
.factory('Mesas',
function($resource) {
    return $resource('/mesas/:id');
});

更新:

重新启动计算机后,它可以工作,可能是角度或mongoDB的一些错误,谢谢

0 个答案:

没有答案