为了账号安全,请及时绑定邮箱和手机立即绑定

nodejs中module.export为一个异步返回结果时该怎么做?

nodejs中module.export为一个异步返回结果时该怎么做?

aluckdog 2019-04-19 16:29:29
在用mongodb的过程中我遇见了如下问题a.js代码:varMongoClient=require('mongodb').MongoClient;MongoClient.connect('mongodb://localhost:27017/local',function(err,db){//UsetheadmindatabasefortheoperationvaradminDb=db.admin();//ListalltheavailabledatabasesadminDb.listDatabases().then(function(dbs){varresult=[];dbs.databases.forEach(function(element,index){result.push(element.name);})db.close();module.exports=result;});});我在另外一个文件中引入b.js代码:vardata=require("a.js");console.log(data);///这时data始终为{}因为a.js中的module.exports还未返回我想到得做法就是把a中的文件封装成一个函数,在b中引入再调用,比如:b.js代码:vardata=require("a.js")();console.log(data);但是这样每次require时都要调用这个函数,感觉好不爽,有什么办法解决上面的问题么?
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 1880 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信