在一个组件中,我有一个如下对象:
statuses = {
'accepted' : 'در حال حرکت به سمت مبدا',
'picking' : 'در حال دریافت مرسوله',
'delivering' : 'در حال حرکت به سمت مقصد',
'delivered' : 'در حال تحویل دادن مرسوله'
};
并在html中:
<div *ngFor="let order of orders;">
<div class="col-md-12 signle-order-div">
<div class="col-md-4">
<fa name="motorcycle" rotate="horizontal"></fa>
<label>{{order.status.last_status}}</label><!-- this gives 'picking' -->
</div>
</div>
</div>
如何从状态对象而不是picking
打印相关的数组索引?
答案 0 :(得分:0)
你的statuses
对象不是一个列表,它没有意义,因为它是讨论元素的(数字)索引。
您可以将其更改为数组: 你可以像这样改变你的结构(当然还有其他方法):
statuses = [
{code: 'accepted', label: 'در حال حرکت به سمت مبدا'},
{code: 'picking' : label: 'در حال دریافت مرسوله'},
{code: 'delivering' : label: 'در حال حرکت به سمت مقصد'},
{code: 'delivered' : label: 'در حال تحویل دادن مرسوله'},
]
然后获取索引:
// get the index of a specific order.status.last_status
statuses.findIndex(status => status.code === order.status.last_status)
我建议您在组件代码中将索引计算为订单对象的附加字段,因为我不希望在模板{{ ... }}
中直接使用复杂函数。但无论如何它应该在模板中起作用。