2016-09-20 31 views
1

我有一個包含其被翻譯,像這樣{{'January' | translate}}如何添加選項到drodown在角2

我想結合我的幾個月中我的下拉管道歲月的幾個月,這裏的下拉是我的是我的HTML和我對象月:

<select class="small"> 
    <option selected="selected">--{{ 'Year' | translate | capitalize }}--</option> 
    <option *ngFor=".."></option> 
</select> 



public MONTH_TRANSLATION = { 
    1: 'January', 
    2: 'February', 
    3: 'March', 
    4: 'April', 
    5: 'May', 
    6: 'June', 
    7: 'July', 
    8: 'August', 
    9: 'September', 
    10: 'October', 
    11: 'November', 
    12: 'December' 
}; 

回答

1

目前角2不允許您遍歷使用*ngFor的對象。你有幾個選項來解決這個限制。

1.)將該對象映射到一個值數組,並使用*ngFor來迭代該值。 但是,此解決方案不允許您訪問密鑰。如果您還需要訪問密鑰,則可以使用選項2.

2.)獲取對象鍵的數組,例如, let keys = Object.keys(MONTH_TRANSLATION) 然後你可以在*ngFor之上遍歷數組鍵,然後用每個鍵查找相應的值。使用Object.keys()不保證您的密鑰的排序順序,所以爲了安全起見,您可以在獲得密鑰後對數組進行排序