我不想使用for循環將Object轉換爲這樣的數組!如果將過程加倍並減慢應用程序的性能(我正在使用Ionic2和Typescript,使用Firebase)Typescript將對象轉換爲數組 - 因爲* ngFor不支持迭代對象
for(let key in data){array_push(value);} }
是否有任何溶液使用* ngFor迭代對象本身(在附圖中所示)。
或者我可以將此Object(如圖所示)轉換爲Array,以便可以在* ngFor中進行迭代。
我不想使用for循環將Object轉換爲這樣的數組!如果將過程加倍並減慢應用程序的性能(我正在使用Ionic2和Typescript,使用Firebase)Typescript將對象轉換爲數組 - 因爲* ngFor不支持迭代對象
for(let key in data){array_push(value);} }
是否有任何溶液使用* ngFor迭代對象本身(在附圖中所示)。
或者我可以將此Object(如圖所示)轉換爲Array,以便可以在* ngFor中進行迭代。
您可以使用Object.keys(OBJ)獲得命名的索引。這將返回一個可以進一步使用/定製的數組結構。樣本使用遍歷對象的值可能看起來像這樣
var persons = {
john: { age: 23, year:2010},
jack: { age: 22, year:2011},
jenny: { age: 21, year:2012}
}
獲得一個迭代器
var resultArray = Object.keys(persons).map(function(personNamedIndex){
let person = persons[personNamedIndex];
// do something with person
return person;
});
// you have resultArray having iterated objects
我不想循環訪問!有什麼解決方案直接在dom中循環? (否則雙循環將被執行!) –
好吧,我對離子沒有太多的知識,但是在Angular中,你可以在迭代器指令中使用用戶'(鍵值)',希望它有助於你對直接操作的關注的DOM避免了循環。 –
(key,value)在Angular2(Typescript - ES5)中不起作用或者Object的Object不能循環通過!我試過了不行;( –
你可以爲它創建一個自定義的管 – JoeriShoeby
我如何能爲它創建一個自定義的管道? –
將Farooq的答案應用到自定義管道中,然後完成 – JoeriShoeby