Je viens de publier un nouveau module dactylographique basé sur le registre NPM, OOAFS . Toutefois, lorsque j'essaie d'installer et d'importer dans un autre projet dossier, VSCode me donne l'erreur suivante sur l'instruction d'importation: Cannot find module 'ooafs'.ts(2307)
.
Les fichiers source de ce module sont compilés à JavaScript dans un dossier et des définitions dist/
(.d.ts
) sont également générés.
Voici l'arborescence du module publié (celui que nous téléchargeons lorsque nous npm install
):
.
├── dist
│ ├── Entry.d.ts
│ ├── EntryFilter.d.ts
│ ├── EntryFilter.js
│ ├── Entry.js
│ ├── EntryType.d.ts
│ ├── EntryType.js
│ ├── FSTypings.d.ts
│ ├── FSTypings.js
│ ├── index.d.ts
│ └── index.js
├── LICENSE
├── package.json
└── README.md
Le package.json
contient les entrées suivantes:
{
"main": "dist/index.js",
"types": "dist/index.d.ts",
...
}
Étant donné que le module fonctionne normalement sur Runkit (pure JS), je suppose que le seul problème que j'ai est lié à documentscript, et ce n'est pas la première fois que le type dactylographie me dit qu'un module n'existe pas lorsque les fichiers de déclaration manquants sont le seul problème.
Est-ce que je manque une étape dans le processus de compilation? Sont mon package.json
propriétés mal?
Si vous devez voir plus de code, le lien GITUB est au début de la question et la structure du module publiée peut être trouvée ici: https://unpkg.com/[email protected]/dist/ .
En fait, le problème ne vient pas de mon module (OOAFS). C'était un problème avec le tsconfig.json
du projet J'utilisais le module dans: La propriété module
doit être définie sur commonjs
apparemment.
TRÈS TARD EDIT : En outre, je vous recommande vivement de définir esModuleInterop
à true
qui vous permet d'importer des modules non-ES6 de manière plus naturelle.