<div*ngIf=“有效”> 此处有内容。。。 </div> <div*ngIf=“!isValid”> 此处的其他内容。。。 </div>
25个答案
<div*ngIf=“isValid;else other_content”> 此处的内容。。。 </div> <ng-template#other_content>此处的其他内容</ ng模板>
<div*ngIf=“isValid;then content else other_content”>此处被忽略 <ng-template#content>此处的内容</ ng模板> <ng-template#other_content>此处的其他内容</ ng模板>
<div*ngIf=“isValid;then content”> <ng-template#content>此处的内容</ ng模板>
HTML
<模板> 元素是保持客户端的机制 加载页面时不呈现的内容,但可以 随后在运行时使用JavaScript进行实例化。
-
11 我希望有一种方法可以只使用<ng-template>而不使用另一个标记(如div),但奇怪的是它不是。。。 我知道<div>在使用时会被删除,但我认为它的实现有点奇怪。 – 安德烈亚斯 评论 2017年3月30日20:03 -
42 -
4 -
-
2
只需使用 如果 <div*ngIf=“有效”> 如果isValid为true </div> 使用 如果有Else (请注意 模板名称 ) <div*ngIf=“isValid;else templateName”> 如果isValid为true </div> <ng-template#templateName> 如果isValid为false </ng-模板> 使用 如果有那么 (请注意 模板名称 ) <div*ngIf=“isValid;then-templateName”> 这里从来没有出现过 </div> <ng-template#templateName> 如果isValid为true </ng-模板> 使用 If with Then和Else <div*ngIf=“isValid;然后是TemplateName else elseTemplateName”> 这里从来没有出现过 </div> <ng-template#thenTemplateName> 如果isValid为true </ng-模板> <ng-template#elseTemplateName> 如果isValid为false </ng-模板>
提示: ng如果 评估 表达 然后渲染 然后 或 其他的 当表达式分别为true或falsy时,将模板放置在其位置。
通常情况下:
然后 template是的内联模板 ng如果 除非绑定到不同的值。 其他的 除非绑定,否则模板为空。
-
-
6 -
三 -
导出类AppComponent{ isDone=true; }
<div*ngIf=“isDone”> 完成了! </div> <!-- 取反运算符--> <div*ngIf=“!完成”> 还没有完成! </div>
<ng-container*ngIf=“isDone;elseNotDone”> 完成了! </ng-container> <ng-template#elseNotDone> 还没有完成! </ng-模板>
<ng容器*ngIf=“isDone;then iAmDone;else iAmNotDone”> </ng-container> <ng-template#iAmDone> 完成了! </ng-模板> <ng-template#iAmNotDone> 还没有完成! </ng-模板>
-
2 问题是,哪一个更好? 从性能角度来看,我怀疑第一个指令有两个指令需要独立评估,而其他两个指令只有一个。 如果您在一个包含数千个元素的列表/表中使用此功能,那么它不会变慢吗? 评论 2020年11月12日17:04 -
如果与else一起使用,我们可以使用 ng如果 和 ngIf其他 . <ng-template[ngIf]=“condition”[ngIf-Else]=“elseBlock”> 条件为true时要呈现的内容。 </ng-模板> <ng-template#elseBlock> 条件为false时要呈现的内容。 </ng-模板> 如果有,我们可以使用 ng如果 和 ngIfThen公司 . <ng-template[ngIf]=“condition”[ngIf Then]=“then Block”> 此内容从未显示 </ng-模板> <ng模板#thenBlock> 条件为true时要呈现的内容。 </ng-模板> 如果有then和else,我们可以使用 ng如果 , ngIfThen公司 、和 ngIf其他 . <ng-template[ngIf]=“condition”[ngIf Then]=“thenBlock”[ngI fElse]=“elseBlock”> 此内容从未显示 </ng-模板> <ng-template#thenBlock> 条件为true时要呈现的内容。 </ng-模板> <ng-template#elseBlock> 条件为false时要呈现的内容。 </ng-模板>
-
-
1 -
-
1
<div*ngIf=“isShow;else elseBlockShow”> 要为If显示的文本 </div> <ng-template#elseBlockShow> 为else块显示的文本 </ng-模板>
<div*ngIf=“(observable$|async)as listOfObject else emptyList”> <div> .... </div> </div> <ng-template#emptyList> <div> ... </div> </ng-模板>
<div*ngIf=“isLoggedIn;else loggedOut”> 欢迎回来,朋友。 </div> <ng-template#loggedOut> 请朋友登录。 </ng-模板>
<ng-template[ngIf]=“isLoggedIn”[ngIf-Else]=“loggedOut”> <div> 欢迎回来,朋友。 </div> </ng-模板> <ng-template#loggedOut> <div> 请朋友登录。 </div> </ng-模板>
<ng控制器 *ngIf=“isLoggedIn;then loggedIn:else loggedOut”> </ng-container> <ng-template#loggedIn> <div> 欢迎回来,朋友。 </div> </ng-模板> <ng-template#loggedOut> <div> 请朋友登录。 </div> </ng-模板>
<ng-container*ngIf=“isValid;then template1 else template2”></ng-container> <ng-template#template1> 模板1包含 </ng-模板> <ng-template#template2> 模板2包含 </ng-模板>
<div*ngIf=“isValid;else templateName”> 如果isValid为true </div> <ng-template#templateName> 如果isValid为false </ng-模板>
<li*ngIf=“bindEmail;然后注销,否则登录”></li> 注销 登录
-
三
{{doThis()?“foo”:“bar”}}
<div[ngClass]=“doThis()?'foo':'bar'”>
**ng如果其他** <div*ngIf=“isConditionTrue;else other_condition”> 此处显示您的内容 </div> <ng-template#other_condition>此处的其他内容</ ng模板> **ngIf然后其他** <div*ngIf=“isConditionTrue;然后content-elset-other_content”>此处被忽略</div> <ng-template#content>此处的内容</ ng模板> <ng-template#other_content>此处的其他内容</ ng模板> **ngIf那么** <div*ngIf=“isConditionTrue;then content”> <ng-template#content>此处的内容</ ng模板>
<div*ngIf=“!object”> 仍在加载。。。。。。。。。。。 </div> <div*ngIf=“对象”> <!-- 此对象的内容--> object.info,object.id,object.name。。。 等。 </div>
事物={ 汽车:“本田”, 鞋款:“Nike”, 衬衫:“Tom Ford”, watch:“Timex” }; <div*ngIf=“things.car;else noCar”> 好车! </div> <ng-template#noCar> 叫优步。 </ng-模板> <!-- 好车!-->
<div*ngIf=“things.car;出租汽车”> 漂亮的{{汽车}}! </div> <!-- 漂亮的本田!-->
<ng-template[ngIf]=“condition1”[ngIf-Else]=“template2”> ... </ng-模板> <ng-template#template2> ... </ng-模板>
-
1 -
5 -
要显示的文本 <ng template#elseBlock>主文本隐藏时的备用文本</ng template>
-
应该有一个解释。 例如,想法/要点是什么? 请回复 编辑(更改)您的答案 ,不在评论中( 没有 “编辑:”、“更新:”或类似内容-答案应该像今天写的一样出现)。 – 彼得·莫特森 评论 2021年11月3日16:41
`@if(){ <div>如果条件为内部</div> }@else if(){ <div>内部if-else条件 }@其他{ <div>其他内部</div> }`
角度4、5和6
<!-- 仅当条件--> <div*ngIf=“condition”></ div(分频)> <!-- 或--> <ng-template[ngIf]=“condition”><div></ div></ng-template> <!-- If和else条件--> <div*ngIf=“condition;else elseBlock”></ div(分频)> <!-- 或--> <ng-template#elseBlock></ ng模板> <!-- If-then-else--> <div*ngIf=“condition;then then Block else elseBlock”></div> <ng-template#thenBlock></ ng模板> <ng-template#elseBlock></ ng模板> <!-- If和else条件(本地存储条件值)--> <div*ngIf=“condition as value;else elseBlock”>{value}}</div> <ng-template#elseBlock></ ng模板>
<div*ngIf=“this.model.SerialNumber!='';then ConnectedContent else DisconnectedContent”class=“data-font”></div> 已连接 断开连接
-
应该有一个解释。 例如,想法/要点是什么? 请回复 编辑(更改)您的答案 ,不在评论中( 没有 “编辑:”、“更新:”或类似内容-答案应该像今天写的一样出现)。 – 彼得·莫特森 评论 2021年11月3日16:23
{variable==null?“Testing1”:“Testing2”}} 或 {variable==null?var1:var2}}
@if(已验证){ <button>注销</button> }
@if(已验证){ <button>注销</button> }@其他{ <button>注册</button> }