How can I share module-private data between 2 files in Node?

后端 未结 3 1900
深忆病人
深忆病人 2021-01-28 01:21

I would like to have a module for Node.js that is a directory with several files. I\'d like some vars from one file to be accessible from other file, but not from the files exte

3条回答
  •  一向
    一向 (楼主)
    2021-01-28 01:38

    Can you just pass the desired stuff in?

    //index.js:
    var foo = 'some value';
    module.exports.additional = require('./additional.js')(foo);
    module.exports.extra = require('./extra.js')(foo);
    
    //extra.js:
    module.exports = function(foo){
      var extra = {};
      // some magic here
      var bar = foo; // where foo is foo from index.js
      extra.baz = function(req, res, next){};
      return extra;
    };
    
    //additional.js:
    module.exports = function(foo){
      var additonal = {};
      additional.deadbeef = function(req, res, next){
        var qux = foo; // here foo is foo from index.js as well
        res.send(200, qux);
      };
      return additional;
    };
    

提交回复
热议问题