NgTemplateOutlet

根据一个提前备好的 TemplateRef 插入一个内嵌视图。

Inserts an embedded view from a prepared TemplateRef.

查看"说明"...

NgModule

选择器

属性

属性说明
@Input()
ngTemplateOutletContext: Object
@Input()
ngTemplateOutlet: TemplateRef<any>

说明

你可以通过设置 [ngTemplateOutletContext] 来给 EmbeddedViewRef 附加一个上下文对象。 [ngTemplateOutletContext] 是一个对象,该对象的 key 可在模板中使用 let 语句进行绑定。

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.

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

在上下文对象中使用 $implicit 这个 key 会把对应的值设置为默认值。

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'}; }
      
      
  1. @Component({
  2. selector: 'ng-template-outlet-example',
  3. template: `
  4. <ng-container *ngTemplateOutlet="greet"></ng-container>
  5. <hr>
  6. <ng-container *ngTemplateOutlet="eng; context: myContext"></ng-container>
  7. <hr>
  8. <ng-container *ngTemplateOutlet="svk; context: myContext"></ng-container>
  9. <hr>
  10. <ng-template #greet><span>Hello</span></ng-template>
  11. <ng-template #eng let-name><span>Hello {{name}}!</span></ng-template>
  12. <ng-template #svk let-person="localSk"><span>Ahoj {{person}}!</span></ng-template>
  13. `
  14. })
  15. class NgTemplateOutletExample {
  16. myContext = {$implicit: 'World', localSk: 'Svet'};
  17. }

方法

ngOnChanges(changes: SimpleChanges)
      
      ngOnChanges(changes: SimpleChanges)
    
参数
changes SimpleChanges