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

282
Visualizações
Angular 4.0.0 no pudo encontrar el código de arranque

Error : Intenté encontrar el código de arranque, pero especifique el código de arranque analizable estáticamente o pase un módulo de entrada a las opciones de complementos.

principal.ts

 getHttp().get('/assets/config.json').toPromise() .then((res: Response) => { let conf = res.json(); platformBrowserDynamic().bootstrapModule(createAppModule(conf)); })

Estoy usando angular-cli. Con angular v2.3.1, este código funcionaba bien.

Quiero buscar json y pasarlo a los proveedores de @Ngmodules

 { provide: Config, useValue: conf }
about 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

Si los datos que está obteniendo de config.json son solo una configuración de un módulo de aplicación y está tratando de crear un servicio de Config para almacenarlos, creo que lo mejor sería asignarlo al environment y leerlo en su Config . servicio más tarde. El environment está disponible en main.ts , por lo que no es necesario piratear ( createAppModule ).

 import { environment } from './environments/environment'; import { AppModule } from './app/'; getHttp().get('/assets/config.json').toPromise() .then((res: Response) => { let conf = res.json(); environment.settings = conf; platformBrowserDynamic().bootstrapModule(AppModule); });

También debe declarar todas las propiedades nuevas del environment en su archivo src/environments/environment.ts .

about 4 years ago · Santiago Trujillo Relatório

0

La respuesta aceptada no funcionó para mí. Extraer la parte bootstrapModule permitirá que Angular encuentre el código de arranque.

 import { environment } from './environments/environment'; import { AppModule } from './app/'; const bootstrap = () => { platformBrowserDynamic().bootstrapModule(AppModule); }; getHttp().get('/assets/config.json').toPromise() .then((res: Response) => { let conf = res.json(); environment.settings = conf; bootstrap(); });
about 4 years ago · Santiago Trujillo Relatório

0

El cli está intentando usar la compilación anticipada. Debido a esto, necesita poder encontrar su NgModule principal.

Por lo general, el compilador AOT puede hacer esto de forma estática simplemente buscando llamadas de arranque. Sin embargo, no está arrancando de inmediato, por lo que el compilador necesita que le diga explícitamente el nombre del módulo de su aplicación para que pueda compilarlo y todos sus componentes.

Soluciones

ng eject y configurar manualmente entryModule

La solución preferida es decirle a la cli el nombre de su entryModule . Esto permitirá que AOT funcione y le brinde todos sus beneficios. Sin embargo, el cli actualmente no es compatible con esto (pero hay un PR para agregar una opción # 4077 ).

La solución actual es usar ng eject --aot para cambiar a una compilación manual basada en un paquete web. Luego puede configurar su entryModule directamente.

  1. ng eject --aot
  2. Abra webpack.config.js y busque el new AotPlugin
    • Agregue lo siguiente y reemplace su nombre AppModule
      entryModule: 'path/to/app.module#AppModule'

Saltar AOT

Puede omitir este problema por completo usando el indicador --no-aot si solo necesita que una compilación funcione. Esto no se recomienda ya que su aplicación será mucho más lenta y más grande de lo que normalmente sería (tendrá que compilar componentes en tiempo de ejecución y tendrá que enviar el compilador que es grande).

ng prod --no-aot

about 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