【发布时间】:2017-08-21 05:28:51
【问题描述】:
我有这种情况,我想调用一个函数来显示正确的 html 标记。这是我当前的代码:
<li ng-repeat="data in myBlock.myData">
<div ng-if="data.type=='Jonh'">
<div class='row'>
<div class='col'>
this is text for Jonh
</div>
</div>
</div>
<div ng-if="data.type=='Roy'">
<div class='row'>
<div class='col'>
Roy will have a different text
</div>
</div>
</div>
<div ng-if="data.type=='Kevin'" >
<div class='row'>
<div class='col'>
Kevin text is also different
</div>
</div>
</div>
</li>
我想将所有 ngif 合并到一个名为“showField(name)”的函数中,该函数将检查并返回正确的 html 标记。怎么可能做到这一点?我的最终 html 标记应如下所示:
<li ng-repeat="data in myBlock.myData">
<div *ngIf="showField(data.type)">
//Not sure how to implement this part
</div>
</li>
【问题讨论】:
-
将您的标记 html 定义为模板,然后使用
ng-if指令包含正确的模板。 -
@HadiJ 很抱歉这么晚才回来。我认为您的建议是可行的方法,但我不确定如何将标记 html 定义为模板。我需要为模板创建自己的指令吗?