NgTemplateOutlet
根据一个提前备好的 TemplateRef
插入一个内嵌视图。
Inserts an embedded view from a prepared TemplateRef
.
NgModule
选择器
属性
属性 | 说明 |
---|---|
@Input() | A context object to attach to the |
@Input() | A string defining the template reference and optionally the context object for the template. |
说明
你可以通过设置 [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>
在上下文对象中使用 $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>
`
})
export class NgTemplateOutletExample {
myContext = {$implicit: 'World', localSk: 'Svet'};
}