代码之家  ›  专栏  ›  技术社区  ›  SinLok

在从构造函数返回之前完成SQL

  •  0
  • SinLok  · 技术社区  · 7 年前

    我正在使用pg promise:

    class Test{
        constructor(){
            this.a = db.any('SELECT * FROM test');
        }
    }
    

    test.a ,它会回来的 Promise { <pending> } } .

    我该如何处理这个问题?我不能用 .then() 解决这个问题,因为我希望这个值可以存储在 this.a

    2 回复  |  直到 7 年前
        1
  •  0
  •   Steven McConnon    7 年前

        2
  •  0
  •   vitaly-t    7 年前

    我不能用.then()来解决这个问题,因为我希望这个值可以在返回之前存储在这个.a中。

    这是一个自相矛盾的说法。如果需要构造函数中的值,则必须使用 then 后来,像这样:

    var t = new Test();
    t.a.then(data => {});
    

    const t = new Test();
    const data = await t.a;