我有一个像<div> {{ Hello }} , {{ Helo2 }} </div>
这样的标记,我想在,
为空时隐藏Hello and Hello2
。任何人都可以帮助我Angular4。
答案 0 :(得分:1)
您可以使用自定义方法{{ join(Hello, Hello2) }}
。
其中:
function join(val1,val2){
var list = [];
if(val1&amp;&amp; val1.length!== 0)list.push(val1);
if(val2&amp;&amp; val2.length!== 0)list.push(val2);
return list.join(&#34;,&#34;);
}
答案 1 :(得分:0)
您可以使用Angulars ng-container
Angular
<ng-container>
是一个没有的分组元素 干扰样式或布局,因为Angular没有把它放入 DOM。
<div>
{{Hello}}
<ng-container *ngIf="Hello && Helo2"> , </ng-container>
{{Helo2}}
</div>
答案 2 :(得分:0)
`<div> {{ Hello }} <span *ngIf="Hello || Helo2">,</span> {{ Helo2 }} </div>`
答案 3 :(得分:0)
只要把#34;,&#34;在* ngIf:
的范围内<div> {{Hello}}
<span *ngIf="Hello && Hello2"> , </span>
{{Hello2}}
</div>
答案 4 :(得分:0)
不要忘记,您始终可以在模板文字中调用函数。
<p>Hello {{commaSeperate("FirstName", "LastName")}}</p>
public commaSeperate(first, second){
if(first == null)
return;
first = first == null ? "" : first;
second = second == null ? "" : second;
return `${second}${second && first ? ',' : ''} ${first}`;
}
https://stackblitz.com/edit/angular-ugadmr
这将返回:
Hello LastName, FirstName
时{p> LastName && FirstName != null
Hello FirstName
时的FirstName != null && LastName == null
当Hello
时FirstName == null
{仅以姓氏问候某人是没有意义的。)
答案 5 :(得分:0)
<p>Hello {{joinNonEmpty(", ", "FirstName", "LastName")}}</p>
joinNonEmpty(separator, ...values) {
return values.filter(x => x).join(separator);
}