Подтвердить что ты не робот

* ngFor для ng-шаблонов ничего не выводит Angular2

Не знаю, почему мой цикл * ngFor ничего не печатает. У меня есть следующий код в html файле:

<table class="table table-hover">
    <thead>
        <tr>
            <th>Name</th>
            <th>Email</th>
            <th>Company</th>
            <th>Status</th>
        </tr>
    </thead>
    <tbody>
        <!-- NGFOR ATTEMPTED HERE -- no content printed -->
        <ng-template *ngFor="let xb of tempData">
            <tr data-toggle="collapse" data-target="#demo1" class="accordion-toggle">
                <td>{{ xb.name }}</td>
                <td>{{ xb.email }}</td>
                <td>{{ xb.company }}</td>
                <td>{{ xb.status }}</td>
            </tr>
            <!-- other content -->
        </ng-template>
    </tbody>
</table>

Тогда в моем простом компоненте я имею следующее:

import { Component }        from '@angular/core';

@Component({
    selector: 'my-profile-exhibitors',
    templateUrl: './profile-exhibitors.component.html',
    styleUrls: ['./profile-exhibitors.component.scss']
})
export class ProfileExhibitorsComponent {
    public tempData: any = [
        {
            'name': 'name1',
            'email': '[email protected]',
            'company': 'company',
            'status': 'Complete'
        },
        {
            'name': 'name2',
            'email': '[email protected]',
            'company': 'company',
            'status': 'Incomplete'
        }
    ];
    constructor() {}
}

Когда я запускаю этот код, я получаю нулевой вывод. Еще страннее то, что когда я выбираю элемент с помощью инструментов отладки, я вижу следующее:

введите описание изображения здесь

Похоже, что он правильно распознает мой объект, но затем ничего не выводит.

4b9b3361

Ответ 1

Я думаю, что вы хотите

<ng-container *ngFor="let xb of tempData">

или

<ng-template ngFor let-xb [ngForOf]="tempData">