如何从 saveAsync return 一个 Mongoose 对象?
How to return a Mongoose object from saveAsync?
我已经用 Bluebird 承诺了 Mongoose - 除了 saveAsync()
返回的文档只是普通对象并且缺少 methods/virtuals.
之外,一切似乎都运行良好
order.saveAsync().then(function(order) {
order.save(); // errors with object has no method 'save'
我以 'save' 为例,但似乎没有内置方法或我的自定义方法可用。
如何获取从 saveAsync
返回的 Mongoose 对象?
使用多个参数调用保存回调 - 对象和 numberAffected
。因此,这个承诺是用一个数组 [object, numberAffected]
来实现的。 (这在 3.0 中发生了变化)
所以你可以取消引用数组(手动或获取),传播或:
order.saveAsync().then(function(result) {
var order = result[0];
return order._id;
});
使用获取
order.saveAsync().get(0).then(function(order) {
return order._id;
});
使用点差
order.saveAsync().spread(function(order, numberAffected) {
return order._id;
});
我已经用 Bluebird 承诺了 Mongoose - 除了 saveAsync()
返回的文档只是普通对象并且缺少 methods/virtuals.
order.saveAsync().then(function(order) {
order.save(); // errors with object has no method 'save'
我以 'save' 为例,但似乎没有内置方法或我的自定义方法可用。
如何获取从 saveAsync
返回的 Mongoose 对象?
使用多个参数调用保存回调 - 对象和 numberAffected
。因此,这个承诺是用一个数组 [object, numberAffected]
来实现的。 (这在 3.0 中发生了变化)
所以你可以取消引用数组(手动或获取),传播或:
order.saveAsync().then(function(result) {
var order = result[0];
return order._id;
});
使用获取
order.saveAsync().get(0).then(function(order) {
return order._id;
});
使用点差
order.saveAsync().spread(function(order, numberAffected) {
return order._id;
});