Desde TypeScript 3, es posible usar proyectos como referencias dentro de un proyecto dado.
Estaba tratando de usar esa función en dos proyectos personales que tengo, pero no funcionaba. Así que decidí usar un ejemplo dado como punto de partida: https://github.com/appzuka/project-references-example
Cuando npm run build , todos los proyectos se compilan correctamente. Entonces decidí modificar el archivo tsconfig.json de los animales del paquete para incluir el soporte de alias. El archivo fue modificado como tal:
{ "extends": "../../tsconfig-base.json", "compilerOptions": { "outDir": "lib", "rootDir": ".", "baseUrl": ".", "paths": { "@animals/*": [ "*" ] } }, "references": [ { "path": "../core" } ] }( baseUrl y las propiedades de las rutas se agregaron dentro de compilerOptions )
Luego modifiqué la primera importación del archivo dog.tsx de esta manera:
import { Animal, Size } from @animals/animal;
Cuando intento construir de nuevo el proyecto principal, falla. el error es:
ERROR in C:\Users\User\Documents\project-references-example\packages\animals\dog.tsx [tsl] ERROR in C:\Users\User\Documents\project-references-example\packages\animals\dog.tsx(1,30) TS2307: Cannot find module '@animals/animal' or its corresponding type declarations.Para que funcione, necesito agregar el alias también en el proyecto principal, así (en tsconfig.json ):
"paths": { "@animals/*": [ "packages/animals/*" ] }¿Existe la posibilidad de utilizar un alias en un proyecto al que se hace referencia sin tener que especificar dicho alias en el proyecto principal?
¡Gracias!