根据TypeORM文档,我正在尝试创建一个新的TypeORM项目并运行以下命令:
npm install typeorm -g
typeorm init --name MyProject --database postgres
我收到此错误:
TypeError: Cannot set property EntityManager of #<Object> which has only a getter
at Object.<anonymous> (~/.npm-global/lib/node_modules/typeorm/index.js:120:23)
at Module._compile (internal/modules/cjs/loader.js:778:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
at Module.load (internal/modules/cjs/loader.js:653:32)
at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
at Function.Module._load (internal/modules/cjs/loader.js:585:3)
at Module.require (internal/modules/cjs/loader.js:692:17)
at require (internal/modules/cjs/helpers.js:25:18)
at Object.<anonymous> (~/.npm-global/lib/node_modules/typeorm/commands/SchemaSyncCommand.js:4:15)
at Module._compile (internal/modules/cjs/loader.js:778:30)
即使我只是尝试运行
,我也会遇到相同的错误typeorm
答案 0 :(得分:7)
添加
"resolutions": {
"tslib": "1.11.2"
}
对于您的包json,tslib 1.12破坏了typeorm
答案 1 :(得分:3)
答案 2 :(得分:0)
好吧,TypeORM使用的依赖项之一显然存在问题。依赖性tslib 1.12.0显然破坏了TypeORM。如果已全局安装TypeORM,请转到安装文件夹(默认位置可能是/ usr / local / lib / node_modules / typeorm)并编辑package.json文件。将tslib的版本更改为“ 1.11.2”。然后运行npm update
更新依赖关系。
答案 3 :(得分:0)
就我而言,我也遇到了同样的问题,并使用我的凭据在项目的根目录下创建了一个名为ormconfig.json
的文件。
{
"type": "postgres",
"host": "localhost",
"port": 5432,
"username": "postgres",
"password": "pass",
"database": "database_name"
}
之后,问题不再存在。
在尝试过user840250的解决方案之前。它可以解决原始问题,但又创建了另一个问题:UnhandledPromiseRejectionWarning: Error: No connection options were found in any of configurations file
。