NodeJs require('./file.js') issues

前端 未结 3 966
广开言路
广开言路 2021-02-02 05:16

I am having issues including files to execute in my NodeJs project.

I have two files in the same directory:

a.js

var test = \"He         


        
相关标签:
3条回答
  • 2021-02-02 05:35

    Change a.js to export the variable:

    exports.test = "Hello World";
    

    and assign the return value of require('./a.js') to a variable:

    var a = require('./a.js');
    console.log(a.test);
    

    Another pattern you will often see and probably use is to assign something (an object, function) to the module.exports object in a.js, like so:

    module.exports = { big: "string" };
    
    0 讨论(0)
  • 2021-02-02 05:36

    if you want to export the variable in another file.There are two patterns. One is a.js
    global.test = "Hello World"; //test here is global variable,but it will be polluted

    The other is
    a.js module.exports.test = "Hello World"; or exports.test= "Hello World"; b.js var test = require('./a.js'); //test in b.js can get the test in a.js console.log(test);

    0 讨论(0)
  • 2021-02-02 05:55

    You are misunderstanding what should be happening. The variables defined in your module are not shared. NodeJS scopes them.

    You have to return it with module.exports.

    a.js

    module.exports = "Hello World";
    

    b.js

    var test = require('./a.js');
    console.log(test);
    
    0 讨论(0)
提交回复
热议问题