Les compilateurs JIT et AOT génèrent tous les deux un fichier AppModuleNgFactory à partir du même code source de l'AppModule.
Le compilateur JIT crée cette classe d'usine à la volée, en mémoire, dans le navigateur. Le compilateur AOT sort la factory dans un fichier physique que nous importons ici dans la version statique de main.ts
À un niveau élevé, @angular/compiler-cli
fournit une enveloppe autour de la fonction tsc
et AoT compile le code de votre application, puis transpose le Typescript de votre application en Javascript :
$ ngc -p src
Cela génère un nouveau fichier pour chaque composant et module ( appelé un NgFactory )
Pour exécuter votre application en mode AoT , il suffit de modifier votre fichier main.ts de la manière suivante
import {platformBrowserDynamic} from ‘@angular/platform-browser-dynamic’
import {MyAppModule} from ‘./app’
platformBrowserDynamic().bootstrapModule(MyAppModule);
à
import {platformBrowser} from ‘@angular/platform-browser’
import {MyAppModuleNgFactory} from ‘./app.ngfactory’ //generated code
platformBrowser().bootstrapModuleFactory(MyAppModuleNgFactory);
EDITAR:
Pour utiliser ngc
la commande, installez d'abord ces
$ npm install @angular/compiler-cli typescript@next @angular/platform-server @angular/compiler
ngc
est un remplacement direct de tsc
que vous trouverez dans ./node_modules/.bin/ngc
dossier.
0 votes
Pour une solution de base github.com/blacksonic/angular2-aot-webpack , et une alternative avec des plugins Webpack (pas besoin de modifier le point d'entrée) github.com/blacksonic/angular2-aot-cli-webpack-plugin (utilise en interne le plugin og Angular CLI)