如果答案是公认的答案,我正在尝试显示复选标记:
template: `<div ngIf="answer.accepted">✔</div>`
但我得到这个错误:
EXCEPTION: No provider for TemplateRef! (NgIf ->TemplateRef)
我究竟做错了什么?
你错过了*NgIf 前面的(就像我们一样,几十次):
*
<div *ngIf="answer.accepted">✔</div>
如果没有*,Angular 会看到该ngIf指令被应用于div元素,但是由于没有*or<template>标记,它无法找到模板,因此出现错误。
ngIf
div
<template>
如果您在使用 Angular v5 时遇到此错误:
错误:StaticInjectorError[TemplateRef]: StaticInjectorError[TemplateRef]: NullInjectorError:没有提供TemplateRef!
您可能拥有<template>...</template>一个或多个组件模板。将标签更改/更新为<ng-template>...</ng- template>.
<template>...</template>
<ng-template>...</ng- template>