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

475
Visualizações
La 'PlatformLocation' inyectable debe compilarse con el compilador JIT, pero '@angular/compiler' no está disponible

Mi aplicación Angular se sirve a través de Node 16.13.0. Después de actualizar a Angular 13, recibo el siguiente error:

La compilación JIT falló para el archivo inyectable [class PlatformLocation]: ///Users/btaylor/work/angular-apps/dz-outages-ui/node_modules/@angular/core/fesm2015/core.mjs:4058 lanzar nuevo error (mensaje) ; ^

Error: la 'PlatformLocation' inyectable debe compilarse con el compilador JIT, pero '@angular/compiler' no está disponible.

El inyectable es parte de una biblioteca que ha sido compilada parcialmente. Sin embargo, Angular Linker no ha procesado la biblioteca de modo que la compilación JIT se use como alternativa.

Idealmente, la biblioteca se procesa utilizando Angular Linker para compilar completamente AOT. Alternativamente, el compilador JIT debe cargarse arrancando usando '@angular/platform-browser-dynamic' o '@angular/platform-server', o proporcionar manualmente al compilador 'importar "@angular/compiler";' antes del arranque. en getCompilerFacade (archivo:///Users/btaylor/work/angular-apps/dz-outages-ui/node_modules/@angular/core/fesm2015/core.mjs:4058:15) en Module.ɵɵngDeclareFactory (archivo:// /Users/btaylor/work/angular-apps/dz-outages-ui/node_modules/@angular/core/fesm2015/core.mjs:32999:22) en archivo:///Users/btaylor/work/angular-apps/ dz-outages-ui/node_modules/@angular/common/fesm2015/common.mjs:90:28 en ModuleJob.run (node:internal/modules/esm/module_job:185:25) en async Promise.all (índice 0) en async ESMLoader.import (node:internal/modules/esm/loader:281:24) en async loadESM (node:internal/process/esm_loader:88:5) en async handleMainPromise (node:internal/modules/run_main:65: 12)

He probado numerosas soluciones, como: Error de compilación de Angular JIT: '@angular/compiler' no cargado

Actualmente, tengo "type": "module" en mi paquete.json

He actualizado mi comando de postinstalación a: ngcc --properties es2020 browser module main --first-only --create-ivy-entry-points

También agregué import '@angular/compiler'; a mi archivo main.ts

El proyecto se compilará, pero no se ejecutará a través de Node.

over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

Creo que he encontrado la solución (suponiendo que esté usando broma como corredor de prueba). En el archivo test-setup.ts , mi proyecto todavía usaba la importación obsoleta para jest-preset-angular. En lugar de import 'jest-preset-angular'; intenta usar import 'jest-preset-angular/setup-jest'; .

Esto solucionó el problema para mí.

over 4 years ago · Santiago Trujillo Relatório

0

Parece que angular 13 convirtió babel-loader un requisito obligatorio para vincular paquetes nativos de Ivy. https://github.com/angular/angular/issues/44026#issuecomment-974137408 - y el problema ocurre porque las bibliotecas principales de Angular ya están compiladas con el formato del paquete Ivy.

Todavía no he realizado el cambio en mis propios proyectos, pero el procesamiento de archivos .mjs con babel y un enlazador especial debería ser suficiente.

 import { dynamicImport } from 'tsimportlib'; /** * Webpack configuration * * See: http://webpack.github.io/docs/configuration.html#cli */ export default async (options: IWebpackOptions) => { const linkerPlugin = await dynamicImport('@angular/compiler-cli/linker/babel', module); const config: any = { module: { rules: [{ test: /\.mjs$/, loader: 'babel-loader', options: { compact: false, plugins: [linkerPlugin.default], }, resolve: { fullySpecified: false } } } } }

Haré más actualizaciones en esta publicación una vez que pueda probarlo yo mismo.

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