我的通知变量中包含一个动态数字计数。如果数字小于99,我想使用三进制运算符显示该数字,否则,我想输入99 +。
我已经尝试过了,但是不允许在三进制中进行字符串插值
<div class="notification-badge" *ngIf="unreadNotificationsCount > 0">
{{(unreadNotificationsCount < 99) ? {{unreadNotificationsCount}} : '99+'}}
答案 0 :(得分:3)
{
太多。
{{ (unreadNotificationsCount < 99) ? unreadNotificationsCount : '99+' }}
应该工作。
答案 1 :(得分:1)
您不能在另一个{{}}
内使用{{}}
尝试一下:
{{(unreadNotificationsCount < 99) ? unreadNotificationsCount : '99+'}}
答案 2 :(得分:1)
your-component.component.html
<div *ngIf="yourNumber">
{{ yourNumber | transalateNumber }}
</div>
transalate-number.pipe.ts
@Pipe({name: 'transalateNumber'})
export class TransalateNumberPipe implements PipeTransform {
transform(value: number): string {
if (value <= 99) {
return value.toString();
} else {
return '99+';
}
}
}
2。尝试在.ts文件中设置数字格式。
your-component.component.html
<div *ngIf="yourNumber">
{{ formatNumber(yourNumber) }}
</div>
your-component.component.ts
...
yourNumber: number = 100;
formatNumbar(value: number): string {
if (value <= 99) {
return value.toString();
} else {
return '99+'
}
...