首页 > 解决方案 > pg-承诺;我无法保存结果集,我得到的唯一返回数据是一个 Promise 对象

问题描述

作为前提,我对 pg-promise、javascript 和 typescript 完全陌生,所以我的问题很可能是微不足道的。

我正在玩 pg-promise,因为我需要从 postgresql 获取一些数据,并且我需要使用 typescript。

我正在使用封装在包装函数中的预定义查询运行“任何”方法。从 any(..) 我只返回了 Promise 对象,我不知道如何使用(或者即使我应该使用它)。我可以在控制台中打印结果集,所以我确信它连接到数据库。

请温柔,是我在stackOverflow的第一篇文章

我在 pg-promise 页面上尝试了一些示例,但可能我的问题是如此琐碎以至于没有在网站中列出,或者可能太简单以至于不值得解释 :-)


function simpleSelect(db: any, query:string){
    var ret :any[] = []
    return db.any(query, [] )
    .then( (data:any) => {  
        return data
    }).finally(db.$pool.end)
    ```

This is the Promise object i got returned
Promise {
  _bitField: 0,
  _fulfillmentHandler0: undefined,
  _rejectionHandler0: undefined,
  _promise0: undefined,
  _receiver0: undefined }

标签: typescriptpg-promise

解决方案


你能试一下吗

function simpleSelect(db: any, query:string){
    var ret :any[] = []
    db.any(query, [] )
    .then( (data:any) => {  
        return data
    }).finally(db.$pool.end)

解决承诺后返回数据而不是返回承诺


推荐阅读