如果你想将参数传递给模块,你可以这样做:
index.js
let test = require("./module.js")(something);
module.js
module.exports = (something) => {
//Working with `something` here
};
但是如果不使用module.exports = (var) => {}
?
更具体地说,能够在函数容器外编写代码,然后在文件末尾执行module.exports
吗?
或者你能够做到这一点?
const globalSomething;
(something) => {
globalSomething = something;
}
module.exports = heavyWorkWith(globalSomething);
如果你了解我。
答案 0 :(得分:1)
您不限于传递参数的未命名函数,您可以使用命名函数
export default function myExport(something) {
//...
}
甚至是一个班级
export default class myExport() {
constructor(something) {
//...
}
}
反之,导入:
const myExport = require('./myModuleOrWhatever');
const foo = new myExport(something);
更重要的是,您可以使用匿名模块导出传递模块常量
const bar = somethingElse;
const baz = moreElse;
/*
alernatively
export default const bar = somethingElse
*/
module.exports = {
foo: (something) => {
//Working with `something` here
},
bar,
baz,
};