Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

3K
Visualizações
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 Respostas
Responde à pergunta

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 Relatório

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 Relatório

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 Relatório

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 Relatório

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 Relatório

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 Relatório

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 Relatório

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 Relatório

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 Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda