VM nodejs:VM模块可以访问嵌套的依赖项吗?

时间:2014-02-10 15:26:50

标签: javascript node.js mongodb

我在VM模块中运行脚本,方法是将上下文传递给vm实例,如下所示

 var vm = require("vm")
 var file1 = require("file1")
 sandbox = {file1:file1}
 var code = " file1.saveInMongoDB({"que" : true})
 var script = vm.createScript(code);
 script.runInNewContext(sandbox,true);
  process.send ({"success"})

依赖项file1具有各种其他依赖项,如mongodb库,文件io等。

调用上述脚本时,应将数据保存在mongodb中,然后通过向主进程发出成功事件来退出。但是,它永远不会保存在DB

我使用eval而不是vm执行相同的脚本,它完美无缺。

那么,是否意味着VM模块无法访问内部依赖项?

0 个答案:

没有答案