如何在我自己的节点js模块中使用模块?

How to use module in my own node js module?

如何在自己的模块中使用第三方模块?例如,如果我在应用程序主文件中有类似的东西(使用 body-parser):

app.post("/dothis", (req,res)=>{
    var name = req.body.name;
    console.log(name);
};

这项工作很好。但是当我想把它放在单独的文件中时(例如 mod.js),并这样写:

exports.own = function(){
       var name = req.body.name;
       console.log(name);
}

然后在主文件中写道:

const mod = require(__dirname + "/mod.js")



app.post("/dothis", (req,res)=>{
        mod.own();
    };

然后我得到错误,如 req is undefined。

我正在尝试添加 mod.js 文件

const {req} = require ("http");

然后我收到无法读取名称未定义值的错误。

问题是,我如何将使用 body-parser、express 和其他模块的代码传输到分离文件或创建自己的模块以获得工作模块?

谢谢!

您未定义,因为您没有传递请求。

查看您的代码,试试这个。

exports.own = function(req){ // use request
       var name = req.body.name;
       console.log(name);
}

const mod = require(__dirname + "/mod.js")



app.post("/dothis", (req,res)=>{
        mod.own(req); // pass request
    };