javascript - 如何在 Express JS 的不同文件中创建自己的异步函数

标签 javascript node.js express request

我想编写自己的函数,例如:

own_function.js:

module.exports = function(req, res, next){
 var js_object;
 // Do some stuff with above javascript object
 // After I want to attach "js_object" to request object:
 req.js = js_object;

 next();
 // also tried next(req, res);
}

我想在不同的“main.js”文件中使用此函数:

main.js:

var own_function = require(__dirname + '/own_function');

own_function(req, res, function(){

// Also tried own_function(req, res, function(req, res){

console.log(req.js_object);

});

它不起作用,我得到了 undefined object 。我认为这只是语法问题,但我不知道正确的语法是什么,请帮助我。谢谢。

最佳答案

main.js 中,您正在调用 console.log(req.js_object);,但在 own_function.js 中,您正在设置 req.js,而不是 req.js_object。这两件事需要匹配。我建议更改 main.js:

var own_function = require(__dirname + '/own_function');

own_function(req, res, function(){

    console.log(req.js); // was req.js_object

});

关于javascript - 如何在 Express JS 的不同文件中创建自己的异步函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25628432/

相关文章:

node.js - 我是否实现了 NodesJS + Passport + RedisStore 的序列化和反序列化?

javascript - 仅显示容器内的匹配行并旋转进出 View

javascript - jQuery 从 name[] 获取选中的复选框

node.js - Viber - 发送键盘消息时隐藏用户字段输入

node.js - 为什么 Node fs.rmdir 错误中没有堆栈跟踪

node.js - 无法安装 NodeJs 模块

node.js - 将变量从 jade 传递到 ng-init 不起作用

javascript - 在 Express 3 中跨 Jade 模板 block 传递变量

javascript - 无法从 WebView Android 获取整个 HTML 代码

javascript - 为什么我的 <div> 不使用这些 jquery 代码滑动?