我有我的JS文件 我在顶部声明了一个变量:
var aCollection = db.myCollection;
我使用此变量来引用该集合。这很容易,因为我可以更改集合的名称来处理另一个集合。
现在我想在函数中使用它,如下所示:
fn1 = function(_id) {
// use _id and aCollection
// i get an error if I use "aCollection"
}
我将上述函数称为:
db.eval(fn1, "245");
答案 0 :(得分:0)
db.eval
在单独的上下文中在服务器上执行fn1
,因此它无法访问其包含脚本的全局上下文。您必须将fn1
更改为接受aCollection
作为参数,然后将该参数传递到db.eval
来电。