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