You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

pg模块解构导入Client失败:为何两种导入方式效果不同?

为什么pg模块直接解构导入Client会报错?
  • pg模块的ES模块导出逻辑是默认导出一个包含所有核心API的对象,Client、Pool这些功能都是这个对象上的属性,而非单独的「命名导出」。
  • import { Client } from 'pg'这种写法,是在尝试直接从模块中导入名为Client的命名导出,但pg模块根本没把Client作为命名导出对外暴露,所以会抛出类似Client is not exported from 'pg'的错误。
  • 而import pg from 'pg'; const { Client } = pg;是先导入模块的默认导出(也就是那个包含所有API的大对象),再从这个对象里解构出Client属性,完全匹配pg模块的导出结构,所以能正常运行。

如果你的pg版本较新,也可以尝试import { Client } from 'pg/lib/client.js'直接导入Client的单独模块,但官方更推荐默认导出后解构的使用方式。

内容的提问来源于stack exchange,提问作者samyss.dev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 02:52:02