4

func1在文件 file_a.js 中定义了一个函数

我有另一个文件file_b.js,我想在其中使用该功能func1。我可以在 mongo 环境中执行此操作吗?

4

2 回答 2

4

由于 AD7six Mongodb 控制台可以按照指定的顺序加载多个输入文件,因此修改了答案。

或者您可以像这样使用内置的加载功能

➜  mongotest  cat test.js
load("test2.js");
print("test.js");
foo();
➜  mongotest  cat test2.js
var foo = function() {
  print("test2.js");
};

➜  mongotest  mongo test.js
MongoDB shell version: 2.0.6
connecting to: test
test.js
test2.js

test.js 是提供给 mongodb 控制台的文件,它加载 test2.js(包含函数 foo)并调用 foo

于 2012-07-23T05:23:24.703 回答
2

如果您是通过 cli 的意思(是吗?),您可以通过 mongo shell 加载多个 js 文件

$ mongo --help
MongoDB shell version: 2.0.6
usage: mongo [options] [db address] [file names (ending in .js)]

注意文件名s

因此,您可以只加载这两个文件,file_a 的内容将可供 file_b 使用:

mongo [args] dbname file_a.js file_b.js
于 2012-07-23T05:54:30.793 回答