打字稿:Mongodb承诺

时间:2015-11-17 16:52:49

标签: node.js mongodb typescript

这感觉就像一个普遍的问题,但我发现它已经被问到了。 下面函数返回值的Typescript签名应该是什么?

在实践中,正确的问题可能是我确实需要输入文件,因为我看到的所有内容似乎都在定义mongo命令的回调版本?

到目前为止,我已经安装了tsd节点,mongodb和bluebird。

function countCountries(db) : *?????* {
    let register = db.collection(REGISTER);

    let countries = [an aggregate]

    return countries.toArray()
        .then( results => {
            return db.collection(SUMMARY)
                .replaceOne( {_id: COUNTRIES}, 
                             {_id: COUNTRIES, 'data': results}, 
                             {upsert: true}  );
        } );
}

我在我的代码中更常使用Bluebird,包括Promise.promisify(mongoClient.connect);,但这里的Typescript推断了Promise<{}>的类型,而promise实际上返回了数据库连接。

0 个答案:

没有答案