我使用此代码显示金额:
<td>{{transaction.amount}} {{transaction.currency}}</td>
当前我的输出为:56030美元
类似的东西:
<td [ngSwitch]="transaction.currency">
<span *ngSwitchCase="'JPY'">/// Display 1000 JPY</span>
<span *ngSwitchCase="'USD'">/// Display 10.00 USD</span>
<span *ngSwitchDefault class="badge">/// Display 10.00 USD</span>
</td>
如何根据货币添加.00?
答案 0 :(得分:2)
这不一定能回答您的问题,但是您是否考虑过使用内置货币Pipe?
答案 1 :(得分:1)
您可以使用内置货币管道作为
<td [ngSwitch]="transaction.currency">
<span *ngSwitchCase="'JPY'">
{{ transaction.amount | currency:'JPY':'symbol':'1.0-0'}}
</span>
<span *ngSwitchCase="'USD'">
{{ transaction.amount | currency:'USD':'symbol':'1.2-2'}}
</span>
<span *ngSwitchDefault class="badge">
{{ transaction.amount | currency:'USD':'symbol':'1.2-2'}}
</span>
</td>
货币管道过滤器的最后一个属性以
格式描述数字信息{minIntegerDigits}.{minFractionDigits}-{maxFractionDigits}
此处美元将至少有一个整数,最小和最大为2个数字,而日元则没有小数
答案 2 :(得分:1)
您现在可以稍作改动,以实现所需的目标:
<td *ngIf='transaction.currency=="JPY"'>{{transaction.amount|number:'1.0-0'}} {{transaction.currency}}</td>
<td *ngIf='transaction.currency!=="JPY"'>{{transaction.amount|number:'1.2-2'}} {{transaction.currency}}</td>
第一个管道“ | number:'1.2-2'”将其格式化为数字,点后有2个小数,另一部分只是交易对象中的文本
建议的更好的解决方案是
<td>{{ transaction.amount | currency:transaction.currency:'' }} {{ transaction.currency }}</td>
或者如果您不介意左侧的货币代码,则可以使用:
<td>{{ transaction.amount | currency:transaction.currency:'code' }}</td>
答案 3 :(得分:0)
尝试使用货币过滤器:
public class Employee {
private String firstName;
private String lastName;
private int age;
//Aggregation Java example
private Address address;
public void setAddress(Address address) {
this.address = address;
}
public Address getAddress() {
return address;
}
}