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

喜欢而已 提交于 2019-12-02 21:33:50

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" };

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);

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);

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!