为什么当我传递 variable/object 时 ngTemplateOutlet 不工作?

Why ngTemplateOutlet is not working when I pass a variable/object?

    <form *ngIf="filters">
      <ng-container *ngTemplateOutlet="filterTemplate; context: {$implicit: filters}"></ng-container>
    </form>

    <ng-template #filterTemplate let-filters>
      <ng-container *ngFor="let field of filters">
        {field.something}
      </ng-container>
    <ng-template>

filters in ng-container is null,谁能告诉我where/what我做错了吗?

如果您正在正确设置filters数据,那么您的代码没有问题:

<ng-container *ngTemplateOutlet="filterTemplate; context: {$implicit: filters}"></ng-container>

<ng-template #filterTemplate let-filters>
  <ng-container *ngFor='let field of filters'>
    {{field.key}}<br/>
  </ng-container>
<ng-template>

WORKING DEMO(使用 ngIf / 并使用 setTimeout 模拟数据延迟)