W3cubDocs

/Angular 11

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–2021 Google, Inc.
Licensed under the Creative Commons Attribution License 4.0.
https://v11.angular.io/api/core/Compiler