Javascript 在node.js中,模块中的一个文件如何查看模块中另一个文件中的函数?
在包含两个文件的模块中,Javascript 在node.js中,模块中的一个文件如何查看模块中另一个文件中的函数?,javascript,node.js,module,Javascript,Node.js,Module,在包含两个文件的模块中,/modx:modx.js和helper.js: ./modx/package.json: { "name" : "module x", "main" : "./modx.js" } ./modx/helper.js: function subFunc() { } ./modx/modx.js: exports.mainFunc = function() { var x = subFunc(); } 当两者都在modx模块中时,如何使helper.js中的
/modx
:modx.js
和helper.js
:
./modx/package.json:
{ "name" : "module x",
"main" : "./modx.js" }
./modx/helper.js:
function subFunc() { }
./modx/modx.js:
exports.mainFunc = function() {
var x = subFunc();
}
当两者都在
modx
模块中时,如何使helper.js中的subFunc()
对modx.js
可见?脚本A
中唯一从脚本B
可见的对象是module.exports
。将对象/函数添加到module.exports
(就像您在mainFunc
中所做的那样)可以使它们从外部可见。没有其他方法。脚本A
中唯一可以从脚本B
看到的对象是模块。导出
。将对象/函数添加到module.exports
(就像您在mainFunc
中所做的那样)可以使它们从外部可见。没有其他方法。在内部。/modx/helper.js
var subFunc = function subFunc() {}
exports.subFunc = subFunc;
Inside.modx/modx.js
var helper = require('./helper.js');
exports.mainFunc() {
var x = helper.subFunc();
}
这里的结果是helper.js中的subFunc函数在外部可用,modx.js中的mainFunc在外部可用 内部。/modx/helper.js
var subFunc = function subFunc() {}
exports.subFunc = subFunc;
Inside.modx/modx.js
var helper = require('./helper.js');
exports.mainFunc() {
var x = helper.subFunc();
}
这里的结果是helper.js中的subFunc函数在外部可用,modx.js中的mainFunc在外部可用 我试过了。甚至在modx.js
中尝试了require(“./modx”)
,但是subFunc()
或modx.subFunc()
都没有成功-是否需要在package.json
中添加其他内容来引用helper.js
文件?@ccyoung我不确定您想做什么package.json
是一个只有npm使用的文件。它在Node.JS中没有任何意义。这不完全正确:require
现在(非常有限地)使用了package.json
(请参阅文档中的“文件夹作为模块”部分了解模块)。@ebohlman我已经阅读了文档,我已得到纠正。我不知道。在这种情况下,我不知道为什么这对OP不起作用。试过了。甚至在modx.js
中尝试了require(“./modx”)
,但是subFunc()
或modx.subFunc()
都没有成功-是否需要在package.json
中添加其他内容来引用helper.js
文件?@ccyoung我不确定您想做什么package.json
是一个只有npm使用的文件。它在Node.JS中没有任何意义。这不完全正确:require
现在(非常有限地)使用了package.json
(请参阅文档中的“文件夹作为模块”部分了解模块)。@ebohlman我已经阅读了文档,我已得到纠正。我不知道。在这种情况下,我不知道为什么这对OP不起作用。如果你想这样做,那么helper
需要成为一个module
以及它自己的目录package.json等。在这种情况下,一个模块中有多个文件-如果可能的话。如果你想这样做,然后,helper
需要成为一个模块
以及它自己的目录package.json等。在这里,如果可能的话,一个模块中有多个文件。