Ответ 1
Вы пропустили *
перед NgIf (как и все мы, десятки раз):
<div *ngIf="answer.accepted">✔</div>
Без *
, Angular видит, что директива ngIf
применяется к элементу div
, но поскольку нет тега *
или <template>
, он не может найти шаблон, следовательно, ошибка.
Если вы получите эту ошибку с помощью Angular v5:
Ошибка: StaticInjectorError [TemplateRef]:
StaticInjectorError [TemplateRef]:
NullInjectorError: Нет провайдера для TemplateRef!
У вас может быть <template>...</template>
в одном или нескольких шаблонах компонентов. Измените/обновите тег до <ng-template>...</ng-template>
.