我一直致力于使用Yeoman构建Angular + Node评论应用程序。
我无法解决错误" TypeError:无法读取属性' _id'未定义"。
这是我的/api/comment/index.js文件
'use strict';
var express = require('express');
var controller = require('./comment.controller');
var auth = require('../../auth/auth.service');
var router = express.Router();
router.get('/:id', controller.show);
router.put('/:id', controller.update);
router.patch('/:id', controller.update);
router.get('/', controller.index);
router.post('/', auth.isAuthenticated(), controller.create);
router.delete('/:id', auth.isAuthenticated(), controller.destroy);
module.exports = router;

这是我的comment.controller.js文件
/ Gets a single Comment from the DB
exports.show = function(req, res) {
Comment.findByIdAsync(req.params.id)
.then(handleEntityNotFound(res))
.then(responseWithResult(res))
.catch(handleError(res));
};
// Updates an existing Comment in the DB
exports.update = function(req, res) {
if (req.body._id) {
delete req.body._id;
}
Comment.findByIdAsync(req.params.id)
.then(handleEntityNotFound(res))
.then(saveUpdates(req.body))
.then(responseWithResult(res))
.catch(handleError(res));
};
// Deletes a Comment from the DB
exports.destroy = function(req, res) {
Comment.findByIdAsync(req.params.id)
.then(handleEntityNotFound(res))
.then(removeEntity(res))
.catch(handleError(res));
};
// Get list of comments
exports.index = function(req, res) {
Comment.loadRecent(function (err, comments) {
if(err) { return handleError(res, err); }
return res.json(200, comments);
});
};
// Creates a new comment in the DB.
exports.create = function(req, res) {
// don't include the date, if a user specified it
delete req.body.date;
var comment = new Comment(_.merge({ author: req.user._id }, req.body));
comment.save(function(err, comment) {
if(err) { return handleError(res, err); }
return res.json(201, comment);
});
};

答案 0 :(得分:0)
查看您提供的代码,问题是#include "camera_connect_dialog.h"
#include "ui_camera_connect_dialog.h"
CameraConnectDialog::CameraConnectDialog(QWidget *parent) :
QDialog(parent),
ui(new Ui::CameraConnectDialog)
{
ui->setupUi(this);
setCameraValidator();
setSDKParameterLayout();
}
CameraConnectDialog::~CameraConnectDialog()
{
delete ui;
}
void CameraConnectDialog::setSDKParameterLayout()
{
lblMethod = new QLabel(tr("Method"));
}
是req.body
。
通过执行:undefined
,您仍然在尝试访问未定义的属性。
正确的if语句是:
if (req.body._id)