繁体   English   中英

如何从模块内部引用Node.js模块的上下文对象?

[英]How to reference a Node.js module's context object from inside that module?

是否可以从模块本身内部获取对模块上下文对象的引用? 不是global对象或exports对象,而是模块的私有上下文对象...

例如在Node.js模块中,我正在寻找一种方法来执行此操作:

var a = 1;
var b = 2;

// CONTEXT is the reference I'm looking for
console.log(CONTEXT); // -> {a: 1, b: 2}

模块中可用的模块上下文(变量,模块和导出)。 因此,如果我在模块中执行此操作,并从另一个脚本中要求它:

var _pv = 1;

var _foo = function() {
    console.log('foo');
}
exports.foo = _foo;

console.log('pv: ' + _pv);
_foo();

console.log(module);
console.log(module.exports);

它输出:

pv: 1
foo
{ id: '/Users/bryanmac/Testing/test2/mod.js',
  exports: { foo: [Function] },
  parent: 
   { id: '.',
     exports: {},
     parent: null,
     filename: '/Users/bryanmac/Testing/test2/test.js',
     loaded: false,
     children: [ [Circular] ],
     paths: 
      [ '/Users/bryanmac/Testing/test2/node_modules',
        '/Users/bryanmac/Testing/node_modules',
        '/Users/bryanmac/node_modules',
        '/Users/node_modules',
        '/node_modules' ] },
  filename: '/Users/bryanmac/Testing/test2/mod.js',
  loaded: false,
  children: [],
  paths: 
   [ '/Users/bryanmac/Testing/test2/node_modules',
     '/Users/bryanmac/Testing/node_modules',
     '/Users/bryanmac/node_modules',
     '/Users/node_modules',
     '/node_modules' ] }
{ foo: [Function] }

编辑:

您澄清了当前范围内的变量。 我不相信您可以从技术上了解这些变量。 请参阅: 获取范围内的所有变量

但是您可以导出这些变量,然后如上所述,它们在module和module.exports中可用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM