W3cubDocs

/Angular

NgTemplateOutlet

directive stable

Inserts an embedded view from a prepared TemplateRef.

@Directive({ selector: '[ngTemplateOutlet]' })
class NgTemplateOutlet implements OnChanges {
  constructor(_viewContainerRef: ViewContainerRef)
  ngTemplateOutletContext: Object
  ngTemplateOutlet: TemplateRef<any>
  ngOnChanges(changes: SimpleChanges)
}

Selectors

[ngTemplateOutlet]

Inputs

ngTemplateOutletContext bound to NgTemplateOutlet.ngTemplateOutletContext

Description

You can attach a context object to the EmbeddedViewRef by setting [ngTemplateOutletContext]. [ngTemplateOutletContext] should be an object, the object's keys will be available for binding by the local template let declarations.

Note: using the key $implicit in the context object will set its value as default.

Example

@Component({
  selector: 'ng-template-outlet-example',
  template: `
    <ng-container *ngTemplateOutlet="greet"></ng-container>
    <hr>
    <ng-container *ngTemplateOutlet="eng; context: myContext"></ng-container>
    <hr>
    <ng-container *ngTemplateOutlet="svk; context: myContext"></ng-container>
    <hr>
    
    <ng-template #greet><span>Hello</span></ng-template>
    <ng-template #eng let-name><span>Hello {{name}}!</span></ng-template>
    <ng-template #svk let-person="localSk"><span>Ahoj {{person}}!</span></ng-template>
`
})
class NgTemplateOutletExample {
  myContext = {$implicit: 'World', localSk: 'Svet'};
}

Constructor

constructor(_viewContainerRef: ViewContainerRef)

Parameters

_viewContainerRef

Type: ViewContainerRef.

Properties

Property Type Description
ngTemplateOutletContext Object
ngTemplateOutlet TemplateRef<any>

Methods

ngOnChanges()

ngOnChanges(changes: SimpleChanges)

Parameters

changes

Type: SimpleChanges.

Usage Notes

<ng-container *ngTemplateOutlet="templateRefExp; context: contextExp"></ng-container>

© 2010–2018 Google, Inc.
Licensed under the Creative Commons Attribution License 4.0.
https://angular.io/api/common/NgTemplateOutlet