javascript - Cum să adaugi un pachet intern pentru tipuri cu Turborepo?


Am încercat să creez un pachet intern pentru Monorepo-ul meu bazat pe Turborepo. Rulez Nuxt 3 cu Tailwind. Acum problema mea este că încerc să creez un pachet personalizat pentru tipuri. Am încercat să urmaresc ghidul de la https://turbo.build/repo/docs/handbook/sharing-code/internal-packages, dar nu a funcționat deloc. Am încercat câteva alte lucruri, dar nimic nu a funcționat.

Are cineva un ghid detaliat pe care să-l pot urma pentru a crea un pachet Internal Types pentru interfețele mele TypeScript astfel încât să le pot folosi în folderul meu App Web și în folderul de pachete/componente UI. (De asemenea, folosind PNPM)

Am încercat să urmez ghidul de mai multe ori, nu a funcționat niciodată. De asemenea, am încercat să adaug interfețele TypeScript prin opțiunea tsconfig include, dar nici asta nu a funcționat (probabil am făcut multe lucruri greșit).

Răspuns #1

Pachetul tău personalizat pentru types va fi foarte asemănător cu ui sau orice alt pachet.

Pașii de urmat:

  1. Creează un folder my-types în interiorul pachetelor.
  2. Creează un folder src și adaugă fișierele tale de tipuri în el. de ex. my-type-a.ts și my-type-b.ts
  3. Adaugă fișierul index.ts în rădăcina pachetului my-types pentru a exporta toate fișierele de tipuri. Pur și simplu adaugă export * from "./src" în el.
  4. Creează un fișier package.json. Adaugă în el fișierele sursă main și types. Așa:

👉👉👉 Acum puteți importa tipuri în celelalte pachete și aplicații. Trebuie doar să adăugați acest nou pachet my-types în dependențe și veți putea importa types sau interfaces în acesta.