我想知道
error
和
result
嵌套MongoDB查询中的参数需要不同于其父/秒使用的名称。
下面只是一个嵌套场景结构的示例,而不是一组实际的更新。
var filter_1 = { _id: o_id };
var update_1 = { $set: { title: title } };
var options_1 = {};
collection.findOneAndUpdate(filter_1, update_1, options_1, function(error, result) {
if (error) {
res.send(error);
} else {
console.log(result);
// BEGIN perform a subsequent update
var filter_2 = { _id: o_id };
var update_2 = { $set: { genre: genre } };
var options_2 = {};
collection.findOneAndUpdate(filter_2, update_2, options_2, function(error, result) {
if (error) {
res.send(error);
} else {
console.log(result);
res.json( { result: result } );
}
});
// END perform a subsequent update
}
});
第一次和第二次更新都可以使用:
function(error, result) {
if (error) {
res.send(error);
} else {...
或者嵌套更新是否需要类似于:
function(error_2, result_2) {
if (error_2) {
res.send(error_2);
} else {...
我想是前者,而且
错误
和
结果
可以在两次更新中使用,因为参数将被限制在自己函数的作用域内,但我只是想检查一下。