MongoDB $ $不接受JavaScript功能

时间:2018-08-30 16:13:47

标签: mongodb mongodb-query

在MongoDb(v4.0)文档中,它说我们可以pass a javascript function到where子句。我希望以下简单的示例返回零个文档...

let receipts = 
    await db
        .collection<IReceipt>("receipt_txs")
        .find({$where: function () { return false; } } )
        .toArray();

但是这会返回每个文档。

以下语法有效,但是出于操作上的原因,我宁愿使用上述语法。

let receipts = 
    await db
        .collection<IReceipt>("receipt_txs")
        .find({$where: "function () { return false; }" } )
        .toArray();

let receipts = 
    await db
        .collection<IReceipt>("receipt_txs")
        .find({$where: "false" } )
        .toArray();

有人可以帮助我了解我要去哪里吗?文档非常清楚,并且此语法为valid since v2,所以我确定它不会是一个错误。

1 个答案:

答案 0 :(得分:1)

$where和函数文字不兼容所有框架。例如,它是feature request in Meteor且不被支持。