【发布时间】:2017-11-24 17:38:52
【问题描述】:
考虑以下代码示例:
<div *ngIf="condition; else elseBlock">
<!-- markup here -->
</div>
<ng-template #elseBlock>
<div>
<!-- additional markup here -->
</div>
</ng-template>
实现相同功能的另一种方法是:
<div *ngIf="condition">
<!-- markup here -->
</div>
<div *ngIf="!condition">
<!-- additional markup here -->
</div>
我想知道应该使用这两种方式中的哪一种以及为什么?
【问题讨论】:
-
如果这里的 有很多行说超过 10 行,我更喜欢使用 elseBlock,它也将帮助其他人知道有一个否定部分会被显示。如果标记内容是几行少于 10 行,两个 ngIf 就可以了(我的个人喜好)
-
致近距离投票者:不,这不是意见问题。尽管有些人相信地球是平的,但这并没有使地球是否平的问题“主要基于意见”。
-
我已经改写了这个问题,所以它不会在没有任何事实的情况下得出意见。我想现在这个问题并没有征求任何人的意见,而是寻求选择两种方式中的一种来实现某事的理由。如果现在投票开放,我将不胜感激,因为答案提供了支持第一个选项的理由。 @torazaburo 我希望你会同意
-
是的,同意非关闭情绪。对于何时在两个
ifs 上使用else的问题, 有一个非基于意见的答案——当你真的想要一个else时!这归结为一个问题,“我看到代码写着if (a < 1) foo; if (a >= 1) bar;。这比if (a < 1) foo else bar;有优势吗?”而这个优势可能是,“使用 else 可以避免两次编写条件,这可能是错误的来源”和干燥你的代码,正如 user663031/toazaburo 所说。
标签: angular angular2-template angular-ng-if