Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

2.9K
Vistas
Angular 9: al punto de entrada de destino le faltan dependencias

Actualicé una biblioteca Angular a Angular 9. Sin embargo, cuando intento usar esa biblioteca en otro proyecto Angular 9, aparece un error como este:

Faltan dependencias en el punto de entrada de destino "mycomponents/entity-selector":

 - mycomponents/shared-services - mycomponents/spinner - mycomponents/text-input

Paquete.json

 { "$schema": "../../../node_modules/ng-packagr/package.schema.json", "name": "entity-selector", "version": "0.0.0", "ngPackage": { "lib": { "entryFile": "public_api.ts" }, "dest": "../../../dist/mycomponents/entity-selector" } }

Este es un criterio de valoración secundario que utiliza otros componentes que también son criterios de valoración secundarios.

En el proyecto de la biblioteca, ¿necesito definir las dependencias en ng-packgr o en otro lugar? El módulo para el componente selector de entidades importa el módulo apropiado para los otros componentes. Este problema surgió desde Angular 9.

Gracias de antemano.

over 4 years ago · Santiago Trujillo
9 Respuestas
Responde la pregunta

0

ngx-quill necesita que la quill de la biblioteca ya esté instalada, así que solo agregar esto resolvió el problema para mí

npm i quill@^1.3.7

over 4 years ago · Santiago Trujillo Denunciar

0

Para Angular y Primeng 9

ERROR en el punto de entrada de destino "primeng" tiene dependencias faltantes:

  • gráfico.js

Mi importación antes:

 import {ToastModule} from "primeng";

Solución:

 import {ToastModule} from "primeng/toast";
over 4 years ago · Santiago Trujillo Denunciar

0

Tuve The target entry-point has missing dependencies al iniciar mi proyecto Angular con npm run start . Una solución simple que funcionó para mí fue clonar mi proyecto de GIT en una nueva carpeta en mi máquina local y luego ejecutar npm install , npm run start en un proyecto limpio. El problema se fue.

over 4 years ago · Santiago Trujillo Denunciar

0

Creo que acabo de resolver la situación que describes. Tengo un paquete NPM llamado my-pkg que contiene varias "bibliotecas" (creadas con ng g library lib[1..N] , etc.). Da la casualidad de que mi libN depende de lib1 . Cuando trato de usar libN en una aplicación, aparece el error:

 The target entry-point "my-pkg/libN" has missing dependencies: - lib1

Así es como importé originalmente lib1 a libN :

 // libN.component.ts import { Lib1Comp } from 'lib1';

Esto funciona cuando construyo my-pkg . El problema es que 'lib1' no se resuelve en un paquete de nivel superior dentro de la carpeta node_modules de mi aplicación. Allí, debería conocerse como my-pkg/lib1 . Entonces, cambiemos la importación en libN.component.ts :

 // libN.component.ts import { Lib1Comp } from 'my-pkg/lib1'; // note lib1 is now prefixed with my-pkg

Por supuesto, no tenemos my-pkg instalado en los node_modules de my-pkg , por lo que no puede encontrar my-pkg/lib1 y ahora my-pkg no se compila.

Pero, ¿y si pudiéramos "instalar" my-pkg en su propia carpeta node_modules? Intentemos copiarlo allí a través de scripts NPM:

 // package.json ... "scripts": { "copy:lib1": "npx copy .\\dist\\lib1\\**\\* .\\node_modules\\my-pkg\\lib1", "build:lib1": "ng build --prod lib1 && npm run copy:lib1", // repeat copy/build scripts as needed for libs[2..N] "build:pkg": "npm run build:lib1 && npm run build:libN" },

Ahora, ejecutamos npm run build:pkg . Construye lib1 y luego lo copia en nuestra carpeta local node_modules , ¡y ahora libN puede importar felizmente desde la ruta my-pkg/lib1 tanto en su biblioteca como en su aplicación!

over 4 years ago · Santiago Trujillo Denunciar

0

ERROR in The target entry-point "primeng" has missing dependencies: - chart.js ERROR in The target entry-point "primeng" has missing dependencies: - quill ERROR in The target entry-point "primeng" has missing dependencies: - @fullcalendar/core npm install --save chart.js npm install --save quill npm install --save @fullcalendar/core
over 4 years ago · Santiago Trujillo Denunciar

0

Modifique su proyecto de componente para cambiar la ruta absoluta a una ruta relativa.

Tal como:

 import {xxx} from 'src/xxx/xxx.module';

para:

 import {xxx} from '../../xxx/xxx.module';
over 4 years ago · Santiago Trujillo Denunciar

0

El primer problema

Recibe ese error porque su proyecto de prueba no tiene esas dependencias instaladas en su directorio node_modules/ . Pero creo que hacer lo que sugiere @Renato y obligar a los usuarios de su biblioteca a instalar manualmente esas dependencias es un enfoque incorrecto.

Para que las dependencias que faltan se instalen automáticamente, es necesario agregar las dependencias de terceros de su biblioteca en dos lugares (dentro de la propia biblioteca):

  • package.json en la raíz de la biblioteca. Creo que ya lo tienes hecho. Poner todos los paquetes aquí garantiza que solo haya un único directorio node_modules/ en la raíz cuando ejecuta su proyecto para desarrollo.
  • projects/entity-selector/package.json es el archivo que se usa como base para el archivo package.json que Angular genera cuando crea su biblioteca. Es necesario agregar las dependencias aquí para que los consumidores de su biblioteca sepan qué paquetes (bueno, su administrador de paquetes) necesitan descargar. Creo que esto es lo que te estás perdiendo actualmente.

El segundo problema

Después de agregar correctamente mis dependencias en ambos lugares, recibí errores de compilación que me decían que debería usar "peerDependencies" y no "dependencias" para mi biblioteca.

Eso no es aplicable a mi caso de uso, por lo que para evitarlo tuve que incluir explícitamente en la lista blanca mis dependencias. Hacerlo se ve un poco diferente dependiendo de cuál de los siguientes estés usando:

  • projects/entity-selector/package.json
  • projects/entity-selector/ng-package.json .


En projects/entity-selector/package.json debería ser:

 { "$schema": "../../../node_modules/ng-packagr/package.schema.json", "ngPackage": { "lib": { "entryFile": "public_api.ts" }, "dest": "../../../dist/mycomponents/entity-selector", "whitelistedNonPeerDependencies": [ "mycomponents/shared-services", "mycomponents/spinner", "mycomponents/text-input" ] } }

En projects/entity-selector/ng-package.json debería ser:

 { "$schema": "./node_modules/ng-packagr/package.schema.json", "lib": { "entryFile": "public_api.ts" }, "whitelistedNonPeerDependencies": [ "mycomponents/shared-services", "mycomponents/spinner", "mycomponents/text-input" ] }

Finalmente, no olvide compilar su proyecto con ng build --prod o obtendrá un error sobre el nuevo compilador Ivy cuando intente publicar en NPM.

over 4 years ago · Santiago Trujillo Denunciar

0

Tuve el mismo problema. Esto vino después de agregar un enlace simbólico, así que tuve que usar

 npm unlink *@your/package*

o simplemente a nivel mundial

 npm unlink
over 4 years ago · Santiago Trujillo Denunciar

0

En el proyecto que importa su biblioteca, agregue lo siguiente a tsconfig.json . Esto garantiza que tsc pueda resolver las "dependencias faltantes" entre los submódulos de su biblioteca.

 "compilerOptions": { "paths": { "mycomponents/*": [ "./node_modules/mycomponents/*" ],

Con esto, no había necesidad de incluir dependencias no pares en la whitelistedNonPeerDependencies .

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda