javascript - 如何使用 ES6 语法导入 pg-promise?

标签 javascript node.js postgresql ecmascript-6 pg-promise

我正在尝试使用 ES6 语法在 nodejs 服务器中设置 Postgres 数据库,但我认为我没有正确导入和初始化 pg-promise。如果我使用常见的 js 语法,我会执行以下操作:

// Create Database Connection
const pgp = require('pg-promise')({});
const db = pgp(config.db);

// Test connection
db.connect()
  .then((obj) => {
    console.log('Connected to database');
    obj.done(); // success, release connection;
  })
  .catch((error) => {
    console.error('ERROR:', error.message);
  });
使用 ES6 我正在尝试执行以下操作,但连接只是挂起并且没有完成或出错。
import pgPromise from 'pg-promise';

// Create Database Connection
const pgp = pgPromise({});
const db = pgp(config.db);

// Test connection
db.connect()
  .then((obj) => {
    console.log('Connected to database');
    obj.done(); // success, release connection;
  })
  .catch((error) => {
    console.error('ERROR:', error.message);
  });
我搜索了 pg-promise 文档,找不到任何关于使用 ES6 语法的信息。关于我应该改变什么的任何想法?

最佳答案

有任何错误信息吗? Nodejs需要特定条件来支持es模块,首先确保你已经正确引入了模块。

// index.mjs
import pgPromise from 'pg-promise';
const pgp = pgPromise({});
console.log(pgp);
然后执行 --experimental-modules
node --experimental-modules index.mjs
更多详情 https://blog.logrocket.com/es-modules-in-node-js-12-from-experimental-to-release/

关于javascript - 如何使用 ES6 语法导入 pg-promise?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62669894/

相关文章:

javascript - TypeError : client. getReceiver 不是 azure-iot-device-http 示例中的函数

postgresql - 如何解决 Postgres 中的错误 42883?

javascript - HTML5 全屏 API 和 DIV

javascript - 从 HTML JavaScript 更改 js 中的变量值?

javascript - 在同一个 MVC 项目中的 C# 类和 JS 文件中使用相同的静态数据,而无需在运行时一次又一次地重建

javascript - Fullpage.js。添加滚动延迟

node.js - nodejs : installing stable (0. 12.7) 与 nvm 失败

node.js - 如何在 mongooseJS 中相互连接模式?

sql - 在 postgres 中使用 "IN()"更新多行时是否有可能出现死锁?

python - 在配置表中按行保存数据与在 Postgres JSONField 中保存为键——哪个更好?