Compiler

From Get docs
< @angular/coreAngular/docs/10/api/core/compiler


Compiler

class

Low-level service for running the angular compiler during runtime to create ComponentFactorys, which can later be used to create and render a Component instance.

See more...

class Compiler {
  compileModuleSync: <T>(moduleType: Type<T>) => NgModuleFactory<T>
  compileModuleAsync: <T>(moduleType: Type<T>) => Promise<NgModuleFactory<T>>
  compileModuleAndAllComponentsSync: <T>(moduleType: Type<T>) => ModuleWithComponentFactories<T>
  compileModuleAndAllComponentsAsync: <T>(moduleType: Type<T>) => Promise<ModuleWithComponentFactories<T>>
  clearCache(): void
  clearCacheFor(type: Type<any>)
  getModuleId(moduleType: Type<any>): string | undefined
}

Description

Each @NgModule provides an own Compiler to its injector, that will use the directives/pipes of the ng module for compilation of components.

Properties

Property Description
compileModuleSync: <T>(moduleType: Type<T>) => NgModuleFactory<T> Compiles the given NgModule and all of its components. All templates of the components listed in entryComponents have to be inlined.
compileModuleAsync: <T>(moduleType: Type<T>) => Promise<NgModuleFactory<T>> Compiles the given NgModule and all of its components
compileModuleAndAllComponentsSync: <T>(moduleType: Type<T>) => ModuleWithComponentFactories<T> Same as compileModuleSync but also creates ComponentFactories for all components.
compileModuleAndAllComponentsAsync: <T>(moduleType: Type<T>) => Promise<ModuleWithComponentFactories<T>> Same as compileModuleAsync but also creates ComponentFactories for all components.

Methods

Clears all caches.

clearCache(): void

Parameters

There are no parameters.

Returns

void


Clears the cache for the given component/ngModule.

clearCacheFor(type: Type<any>)

Parameters
type Type


Returns the id for a given NgModule, if one is defined and known to the compiler.

getModuleId(moduleType: Type<any>): string | undefined

Parameters
moduleType Type
Returns

string | undefined



© 2010–2020 Google, Inc.
Licensed under the Creative Commons Attribution License 4.0.
https://v10.angular.io/api/core/Compiler