Ionic 3 как получить массив с одной страницы на другую страницу - PullRequest
0 голосов
/ 25 сентября 2019

Мне нужно передать массив с одной страницы на другую.На первой странице массив создается путем выбора элементов из списка, и он выдвигает все итеры нормально, но когда я получил этот массив на другой странице, он стал объектом массива, и я не могу прочитать данные на своей HTML-странице, вотчасть моего кода:

labo.ts - так я создаю свой массив, и это прекрасно

selectItem(itemKey){
   const foundAt = this.selectedQuestions.indexOf(itemKey);
   if (foundAt >= 0) {
      this.selectedQuestions.splice(foundAt, 1);
   } else {
      this.selectedQuestions.push(itemKey);
   }
  console.log(this.selectedQuestions);

}

Когда я заканчиваю добавлять элементы, яотправьте его на calendar.ts

calendar(){
 console.log("ARRAY ", this.selectedQuestions)
    this.navCtrl.push(CalendarioPage,{
      queryParams: {
           value : this.selectedQuestions
       },
  });

}

Это файл calendaar.ts, где мне нужно получить массив:

 export class CalendarioPage {
  datos: Array<object>;

  constructor(public navCtrl: NavController, public navParams: NavParams,
    public http: Http, private conteSearch : ContesearchProvider) {

    this.datos = navParams.get("queryParams");

    console.log("array -> ", this.datos)

  }  
 }

В моем calendar.htmlФайл, который я пытаюсь прочитать массив:

<div *ngFor="let dato of datos">
  {{dato.nombre}} 
</div>

И я получил эту ошибку "Ошибка ОШИБКИ:" Uncaught (в обещании): Ошибка: Невозможно найти другой объект поддержки [[Object Object] 'типа«объект».NgFor поддерживает только привязку к итерируемым объектам, таким как массивы. "

Так выглядит массив до и после (при получении в calendar.ts)

enter image description here

Заранее спасибо за любую идею!

1 Ответ

0 голосов
/ 25 сентября 2019

Ваш переданный массив доступен по значению ключа объекта this.datos

Так что вам нужно прочитать его как this.datos.value, который должен работать.

Спасибо

...