当尝试运行“npm run serve:dev”时,出现“错误:请手动安装pg包”?

nbewdwxp  于 2023-08-06  发布在  其他
关注(0)|答案(7)|浏览(115)

我试图运行脚本npm run serve:dev的应用程序,但它给出了一个错误Error: Please install pg package manually当尝试运行npm run serve:dev
我已经试过npm install -g pg','npm install -g pg-hstore
错误:
kshitij-mag@0. 1. 0 serve:dev/home/qroach/kshitij-mag nodemon--ignore './src/'--exec babel-node--presets babel-preset-env./server/bin/www
[nodemon] 1.18.10 [nodemon]要随时重新启动,请输入rs [nodemon] watching:.[nodemon]启动babel-node--presets babel-preset-env./server/bin/www/home/qroach/node_modules/sequelize/lib/dialects/abstract/connection-manager. js:81 throw new Error(请手动安装${moduleName}包);^
错误:请手动安装pg包在ConnectionManager._loadDialectModule(/home/qroach/node_modules/sequelize/lib/dialects/abstract/connection-manager. js:81:15)在new ConnectionManager(/home/qroach/node_modules/sequelize/lib/dialects/postgres/connection-manager. js:18:24)在new PostgresDialect(/home/qroach/node_modules/sequelize/lib/dialects/postgres/index. js:14:30)在new Sequelize(/home/qroach/node_modules/sequelize/lib/sequelize. js:241:20)在Object.(/home/qroach/kshitij-mag/server/db/models/index. js:十六:(15)模块。_compile(internal/modules/cjs/loader. js:七九九:/usr/lib/node_modules/babel-cli/node_modules/babel-register/lib/node. js:一百四十四:5)在Object.require.extensions。(匿名函数)[as. js](/usr/lib/node_modules/babel-cli/node_modules/babel-register/lib/node. js:一百五十四:(7)模块。load(internal/modules/cjs/loader. js:六百六十六:32)在tryModuleLoad(internal/modules/cjs/loader. js:第六百零六章:12)在Function.Module._load(internal/modules/cjs/loader. js:第五百九十八章:(3)模块。require(internal/modules/cjs/loader. js:705:19)at require(internal/modules/cjs/helpers. js:十四:(16)对象。(/home/qroach/kshitij-mag/server/controllers/AuthController. js:2:1)在模块上。_compile(internal/modules/cjs/loader. js:七九九:/usr/lib/node_modules/babel-cli/node_modules/babel-register/lib/node. js:一百四十四:5)在Object.require.extensions。(匿名函数)[as. js](/usr/lib/node_modules/babel-cli/node_modules/babel-register/lib/node. js:一百五十四:(7)模块。load(internal/modules/cjs/loader. js:六百六十六:32)在tryModuleLoad(internal/modules/cjs/loader. js:第六百零六章:12)在Function.Module._load(internal/modules/cjs/loader. js:第五百九十八章:(3)模块。require(internal/modules/cjs/loader. js:705:19)at require(internal/modules/cjs/helpers. js:十四:16)[nodemon] app crashed-waiting for file changes before starting.
我希望它使用脚本运行,但它只是给出了这个错误。

23c0lvtd

23c0lvtd1#

只需要在本地安装
第一个月

b1zrtrql

b1zrtrql2#

我也面临着同样的问题。尝试像这样连接数据库:

import * as pg from 'pg';
import { Sequelize } from 'sequelize';

const sequelize = new Sequelize('postgres://admin:admin@localhost:5432/mydb', {
  dialectModule: pg
});

字符串
这对我很有效。更多信息here

ffx8fchx

ffx8fchx3#

当我从本地节点模块运行它时,它为我工作
第一个月

0tdrvxhp

0tdrvxhp4#

//in your sequelize object initialization do this

import pg from 'pg';

{
   // your sequelize config
   dialectModule: pg
   ...
}

字符串

hjqgdpho

hjqgdpho5#

使用以下命令全局安装它:

npm install -g pg --save

字符串
本地安装对我不起作用,请确保有-g标志

58wvjzkj

58wvjzkj6#

在运行npx sequelize-cli时,还要确保安装了sequelize-cli

我只在Heroku遇到了这个问题。盯着它看了很久,我终于明白了原因:我在devDependencies上有sequelize-cli,Heroku一定是在修剪它们。然后,当我运行npx sequelize-cli时,它每次都将sequelize-cli安装到某个全局位置。但从那里,pg不存在。将sequelize-cli移动到dependencies解决了这个问题。
顺便说一句:总是做npx --no-install。动态安装是疯狂的,特别是像这样的对等依赖关系,正如我所了解的。

kupeojn6

kupeojn67#

尝试删除node_modules并重新安装它们:

npm install

字符串
或者是

yarn

相关问题