我有一个基本的Node webserver(Koa.js是一个ORM).我喜欢用
REPL启动它,这意味着我可以像CLI工具一样使用我的应用程序.
我的所有查询都返回Promises,但我不知道如何在REPL中解决它们.我该如何解决?
例如,下面的代码(fetch()查询数据库并返回一个promise)只给出这个输出Promise {_bitField:4325376,_fulfillmentHandler0:undefined,_rejectionHandler0:undefined …}
Transaction.where('reference','1').fetch().then((res) => return res)
解决方法
更新:Node.js现在默认执行此操作并解析promise
老答案:
您无法正确解决它们 – 但您可以提取它们对全局范围的引用:
> Transaction.where('reference','1').fetch().then((res) => out = res) [Object Promise] > out /* your data outputted here since the global was assigned to*/
我们可能允许将来在Node中等待REPL,这样可以更清晰地解决问题.