我正在编写一个小帮手模块,以使nodejs mongodb驱动程序与promises一起工作 . 我的一个功能如下:
this.saveP = function(doc,options){
return new Promise(function(res,rej){
collection.save(doc,options,function(err,result){
if(err) rej(err);
else res(result);
})
})
}
但是当我调用这个函数时,promise会解决一个奇怪的对象:
{ result: { ok: 1, nModified: 1, n: 1 },
connection:
{ domain: null,
_events:
{ close: [Object],
error: [Object],
timeout: [Object],
parseError: [Object],
connect: [Function] },
_maxListeners: undefined,
options:
{ socketOptions: {},
auto_reconnect: true,
...
文档(http://mongodb.github.io/node-mongodb-native/2.0/api/Collection.html#save)似乎表明这应该有效 . 这是怎么回事?