javascript – 如何在使用带有REPL的应用程序时解决承诺

我有一个基本的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,这样可以更清晰地解决问题.

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...