在玩笑测试中无法使用构造函数创建Pool实例

时间:2019-06-18 11:03:18

标签: node.js jestjs node-postgres

当我进行一次开玩笑的测试时,在需要使用该池时创建一个Pool实例时,它返回一个_pg。Pool不是构造函数错误。

我尝试查看stackoverflow:pg.Pool is not a constructor

这仍然行不通。

但是,当我运行代码时,我能够创建一个池实例,该错误仅在Jest中显示。

节点代码:

import { Pool } from 'pg'

const pool = new Pool({configs})

export default pool

错误日志:

● Test suite failed to run

    TypeError: _pg.Pool is not a constructor

    > 6 | const pool = new Pool({
        |              

      at Object.<anonymous> (src/resources/connection.js:6:14)
      at Object.require (src/routes/api.js:2:20)
      at Object.<anonymous> (src/__tests__/integration/user.test.js:8:1)

sidenode:该代码是https://node-postgres.com/api/pool

中文档的副本

我不希望发生错误,因为pg.Pool是带有构造函数的类。

1 个答案:

答案 0 :(得分:1)

万一有人遇到相同的问题,我可以通过安装已合并到主pg包中的pg-pool来解决,然后导入pg-pool的Pool而不是pg的

参考:https://github.com/brianc/node-postgres/tree/master/packages/pg-pool