Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用模块require()参数的不同方式?_Javascript_Node.js_Module - Fatal编程技术网

Javascript 使用模块require()参数的不同方式?

Javascript 使用模块require()参数的不同方式?,javascript,node.js,module,Javascript,Node.js,Module,如果要将参数传递到模块中,请执行以下操作: index.js let test = require("./module.js")(something); module.exports = (something) => { //Working with `something` here }; module.js let test = require("./module.js")(something); module.exports = (something) => {

如果要将参数传递到模块中,请执行以下操作:

index.js

let test = require("./module.js")(something);
module.exports = (something) => {
    //Working with `something` here
};
module.js

let test = require("./module.js")(something);
module.exports = (something) => {
    //Working with `something` here
};
但是有没有办法不用
module.exports=(var)=>{}
就可以做到这一点呢

更具体的是,能够在函数容器外编写示例代码,然后在文件末尾执行
module.exports

或者你能做到这一点

const globalSomething;

(something) => {
  globalSomething = something;
}

module.exports = heavyWorkWith(globalSomething);

如果您理解我的意思。

您不局限于使用未命名函数来传递参数,您可以使用命名函数

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

导出的不仅仅是一个函数?你可以导出你想知道的任何东西,但是当你想获取在
index.js
中定义的参数时,你需要使用完全相同的格式:DNo你不需要,你可以使用命名函数或类声明。你能告诉我怎么做吗当然,请稍等片刻,我非常高兴地说:D它很好:D我几乎开始怀疑javascript是有限的lang:D