我认为可以区分文件是否需要或直接传递给节点?
E.g:
//foo.js
if( ???? ){
console.log( "This file was required" );
else{
console.log( "This file was run directly" );
}
输出"此文件是必需的"当一些其他文件需要它像这样
//baz.js
var foo = require('foo.js');
并输出"此文件直接运行"直接传递给节点时:
$ node foo.js
条件应该是什么样的?
答案 0 :(得分:3)
您可以查看module.parent
以查看它是全局运行还是必需运行。
需要此模块的模块。
如果不需要,则表示module.parent
不存在。
if (module.parent) {
console.log('File is being required.');
} else {
console.log('File is being run directly.');
}