如何在另一个模块中使用一个模块函数的输出
How to use the output from a function of a module in another module
我有一个模块,在那里我创建一个数据库连接和一个运行查询的函数。我想在另一个模块中使用此查询的输出。我该怎么做呢?
查询应该返回键值对中的值(hello:world)。然而,每次我试图在另一个模块中使用该变量时,我最终得到的是"true"而不是"world"。
我的代码在这里https://github.com/rishavs/RedisDbConnect我想从app.js调用getValue函数,也许console.log(db.getValue())输出
async函数不能像sync函数那样返回值。你需要使用回调方式。像这样修改你的代码:
getValue功能:
var getValue = function(cb) {
dbConnection.get("hello", function (err, reply) {
var val = reply ? reply.toString() : null;
cb(err, val);
});
};
控制器:
app.get('/json', function(req, res, next) {
res.contentType('application/json');
db.getValue(function(err, val) {
if (err) return next(err);
res.send(val);
});
});
相关文章:
- Javascript,访问一个主要对象模块模式中的每个对象
- 错误:$injector:modulerr模块错误(我的第一个SPA应用程序)
- 如何定义一个模块并使用它来分离js文件
- 聚合物是一个框架而不是一个库.如何模块化地使用web组件
- 需要从一个文件中获取多个模块
- 在一个表达式中加载并使用ES6模块
- 在我的JavaScript模块中绑定一个点击事件
- ESDoc将我所有的模块方法放在一个标题下,而不是放在每个文件下,我该如何改变这种行为
- 从一个模块暴露到另一个模块
- 查找与锁定和更新调度相关的一个或两个节点模块
- NodeJS:一个全局EventEmitter或每个模块它'他自己的
- 如何将多个 AMD 模块捆绑在一个文件中
- 节点模块对象范围:在所有函数之间共享一个对象
- 从导出的模块返回变量,并在另一个文件(NodeJS)中使用它
- 在节点中.js“模块”始终是一个对象
- 在单独的模块中放入一个脚本
- Node.js创建一个模块来收集内存(ram)信息
- 如何从另一个模块调用函数
- 无法调用requirejs中的另一个模块
- 无法导入模块:您可能需要一个合适的加载程序