javascript - package Turborepo/Typescript - maintenir la structure des importations
Je développe une série de packages pour TypeScript dans le cadre d'un projet Turborepo. Un exemple de la structure d'importation de ces packages serait
import { Test } from "package-name"
import { Test } from "package-name/Test"
Le problème que je rencontre avec cela est qu'en développement avec Turborepo, je ne peux le référencer que de cette manière :
import { Test } from "package-name"
import { Test } from "package-name/dist/Test"
import { Test } from "package-name/src/Test"
Cela est dû au fait qu'il ne se trouve pas dans le répertoire racine, mais plutôt dans le répertoire src (ou si construit dans dist).
Y a-t-il un moyen de contourner cela ? J'ai essayé plusieurs options dans TSConfig pour voir si cela résoudrait le problème, mais je ne semble en trouver aucune.
Réponse n°1
Donc, pour répondre à ma propre question, je pense que le mécanisme principal ici serait (étant donné qu'il s'agit d'un nombre limité de packages) que je pourrais remplacer le chemin d'importation avec mes chemins tsconfig.json dans l'application principale qui consomme ce package, plutôt que dans le package lui-même.
Il y a probablement une façon plus propre de faire cela, mais cela fonctionne.
Par ex.
"package-name": [
"../../node_modules/package-name/src/*",
]
Je peux maintenant faire :
import { Test } from "package-name"
import { Test } from "package-name/Test"
Au lieu de
import { Test } from "package-name"
import { Test } from "package-name/src/Test"
