Чтение одного массива и отображение в виде списка в приложении ionic

#html #angularjs #angular #ionic-framework

#HTML #angularjs #angular #ionic-framework

Вопрос:

В приложении Ionic у меня есть массив, как показано ниже.

Приведенное ниже взято из console.log(this.itemlist);

 0: Array(4)
0: "Item1"
1: "Item2"
2: "Item3"
3: "Item4"
length: 4
  

Проблема в том, что я не могу отображать отдельные записи как отдельный элемент в виде списка в моем приложении ionic.

Мой item.html выглядит следующим образом:

 <ion-item no-lines text-wrap class="item" *ngFor="let item of itemlist" >
<p>{{item}}</p>
</ion-item>
  

Мой item.ts выглядит следующим образом:

 if(localStorage.length > 0){
    var localStorageArray = new Array();
    for (i=0;i<localStorage.length;  i){
        localStorageArray[i] = localStorage.key(i) localStorage.getItem(localStorage.key(i));
    }
    var sortedArray = localStorageArray.sort();
}
this.itemlist.push(sortedArray);
console.log(this.itemlist);
  

Ответ №1:

У вас this.itemlist неправильная структура.. измените ваш *ngFor на этот *ngFor="let item of itemlist[0]"

Когда вы помещаете значение в массив, оно вставляется как новый элемент в массив. в вашем случае все sortedArray становится 0-м элементом в вашем itemlist

Другим решением было бы разместить ваш массив внутри itemlist вместо использования .push, вот так

 this.itemlist = [...sortedArray]