J'essaie de créer un nouveau projet TypeORM et j'ai exécuté les commandes suivantes, selon la documentation TypeORM:
npm install typeorm -g
typeorm init --name MyProject --database postgres
J'obtiens cette erreur:
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)
J'obtiens la même erreur même si j'essaye juste de courir
typeorm
Dans mon cas, j'étais confronté au même problème et j'ai créé un fichier appelé ormconfig.json
à la racine du projet avec mes informations d'identification.
{
"type": "postgres",
"Host": "localhost",
"port": 5432,
"username": "postgres",
"password": "pass",
"database": "database_name"
}
Après cela, le problème n'est plus.
Avant, j'avais essayé la solution de user840250. Cela a fonctionné pour le problème d'origine, mais il en a créé un autre: UnhandledPromiseRejectionWarning: Error: No connection options were found in any of configurations file
.
Ok, il y a apparemment un problème avec l'une des dépendances utilisées par TypeORM. La dépendance tslib 1.12.0 casse apparemment TypeORM. Si vous avez installé TypeORM globalement, accédez à votre dossier d'installation (la valeur par défaut est probablement/usr/local/lib/node_modules/typeorm) et modifiez le fichier package.json. Changez la version de tslib en "1.11.2". Puis exécutez npm update
pour mettre à jour les dépendances.