假设我有2个文件:main.js
和module.js
:
//main.js
const myModule = require('./module');
let A = 'a';
myModule.log();
//module.js
module.exports = {
log() {
console.log(A);
}
}
调用myModule.log
时,未定义A
。有什么方法可以main.js
中module.js
提供全球变量吗?感谢。
答案 0 :(得分:3)
使用force use global
const myModule = require('./module');
let A = 'a';
global.A = A
myModule.log();
答案 1 :(得分:2)
A
不是全局变量。每个模块本身都包含在一个函数中,A
是该函数的本地函数。您需要明确地将引用传递给您的变量
module.exports = {
log(a) {
console.log(a);
}
}
//...
//main.js
const myModule = require('./module');
let A = 'a';
myModule.log(A);