J'essaie d'utiliser LernaJS avec TypeScript et j'ai des problèmes. Lorsque j'essaie d'exécuter mon package-1 qui a package-2 comme dépendance, j'obtiens l'erreur:
module.js: 549 erreur de lancer; ^ Erreur: impossible de trouver le module 'package-2' sur Function.Module._resolveFilename (module.js: 547: 15) sur Function.Module._load (module.js: 474: 25) sur Module.require (module .js: 596: 17) chez require (internal/module.js: 11: 18) chez Object. (/home/gabriel/Documentos/projetos/nodejs/lerna-t2/packages/package-1/dist/index.js:3:19) sur Module._compile (module.js: 652: 30) sur Object.Module._extensions..js (module.js: 663: 10) sur Module.load (module.js: 565: 32) sur tryModuleLoad (module .js: 505: 12) sur Function.Module._load (module.js: 497: 3)
J'ai suivi les étapes suivantes:
. ├── lerna.json ├── node_modules ├── package.json ├── package-lock.json └── packages ├── package-1 └── package-2
{ "options de compilation": { "outDir": "dist", "target": "es5", "module": "commonjs" } }
FILE TREE
Mon arborescence de fichiers 'package-1':
. ├── dist │ └── index.js ├── index.ts ├─ ─ node_modules │ ├── package-2 -> ../../package-2 │ └── TypeScript ├── package.json ├── package-lock.json └── tsconfig.json
Mon arborescence de fichiers 'package-2':
. ├── dist │ ├── index.js │ └── lib │ └─ ─ teste.js ├── index.ts ├── lib │ └── teste.ts ├── package.json ├── package-lock.json └── tsconfig.json
CODE
package-1:
importer {Teste} à partir de 'package-2' new Teste (). printHello ()
package-2:
classe d'exportation Teste { printHello () { console.log ('Bonjour!') } }
exporter {Teste} à partir de './lib/teste'[.____.
Veuillez vous assurer d'avoir défini main
dans votre package.json dans (au moins projet-2). Je suppose que le champ du nom dans package.json (pour le projet-2) est project-2
.
Le lien principal doit être lié à dist/index.js