有这段代码。想要去chanche领域。
apiRoutes.put('/intake/:id', function(req, res) {
var id = req.params.id;
Intake.findById(id, function(err, intake) {
if (err)res.send(err);
if (intake.check == false) {intake.check = true;}
else {intake.check = false;}
intake.save(function(err) {
if (err) {return res.json({success: false, msg: 'Error'});}
res.json({success: true, msg: 'Successful update check state.'});
});
})
});如果(检查!= false) {intake.check = false;} ^,则接收此错误
ReferenceError:未定义check
发布于 2016-06-20 23:14:02
您可能找不到具有该id的吸入器。您应该首先检查是否返回了任何intake。在它周围包装一个if(intake)来捕获该异常。
只有在出现实际错误时才会返回错误。如果没有发现入口,那么findById将只返回一个空的对象{}。所以,如果你尝试检查一个空对象的字段,你会得到一个错误。
尝试:
Intake.findById(id, function(err, intake) {
if (err) {res.send(err); return;}
if (intake) {
if (intake.check == false) {intake.check = true;}
else {intake.check = false;}
} else {
res.send("No intake found.");
}https://stackoverflow.com/questions/37925912
复制相似问题