<ng-template>
- это определение шаблона. И, например, *ngTemplateOutlet
является экземпляром шаблона. Определение шаблона не должно содержать других определений, но может содержать экземпляры шаблонов, экземпляры компонентов и т. Д., Например:
<div *ngTemplateOutlet="template1; context: {param: 'world'}" >
</div>
<ng-template #template1 let-param="param">
<div *ngTemplateOutlet="template2; context: {param: param}" >
</div>
</ng-template>
<ng-template #template2 let-param="param">
Hello {{param}}
</ng-template>