javascript - Turborepo/Typescript pakket - importstructuur behouden
Ik ontwikkel een reeks pakketten voor TypeScript als onderdeel van een Turborepo-project. Een voorbeeld van de importstructuur van deze pakketten zou zijn
import { Test } from "package-name"
import { Test } from "package-name/Test"
Het probleem dat ik hiermee ondervind is dat ik in ontwikkeling met Turborepo er alleen zo naar kan verwijzen:
import { Test } from "package-name"
import { Test } from "package-name/dist/Test"
import { Test } from "package-name/src/Test"
Dit komt doordat het zich niet in de hoofdmap bevindt, maar in plaats daarvan in de src (of als het is gebouwd dist) map.
Is er een manier om dit te omzeilen? Ik heb verschillende opties in TSConfig geprobeerd om te zien of dit het probleem zou oplossen, maar ik kan er geen vinden.
Antwoord #1
Dus om mijn eigen vraag te beantwoorden, denk ik dat het hoofdmechanisme hier zou zijn (aangezien het een beperkt aantal pakketten is) dat ik het importpad zou kunnen overschrijven met mijn tsconfig.json-paden in de hoofdapplicatie die dat pakket gebruikt, in plaats van in het pakket zelf.
Er is waarschijnlijk een nettere manier om dit te doen, maar het werkt wel.
Bijv.
"package-name": [
"../../node_modules/package-name/src/*",
]
Ik kan nu doen:
import { Test } from "package-name"
import { Test } from "package-name/Test"
In plaats van
import { Test } from "package-name"
import { Test } from "package-name/src/Test"
