Я получаю ошибку при передаче параметров из сервиса - PullRequest
0 голосов
/ 30 января 2019

Вот код, и я получаю сообщение об ошибке при передаче этого параметра из служб.

export class CardsPage {
    currentItems: Item[];
    id: any;
    getData: Object;
    categories:any;
 constructor(public navCtrl: NavController, public api:Api, navParams: 
   NavParams, items: Items, public http: HttpClient) {
         this.id = navParams.get('idName') ||'';
         console.log(this.id); 
 this.api.getCategoryPosts(this.id).subscribe(data=>{
   console.log(data)
    this.getData = data
 },err=>{
 console.log(err)
 })
 }
  openItem(item){
     this.navCtrl.push('ItemDetailPage', {
     itemName: item
  });
  }
 }

Вот мой файл Ts:

getCategoryPosts(category: any) {
   return this.http.get(`${this.api_url}/posts? 
   categories=${category.id}`);
  }

Ошибка, которую я получаюСсылочная ошибка: категория не определена Ссылочная ошибка.Категория не определена на новой странице CardsPage

1 Ответ

0 голосов
/ 31 января 2019

Здравствуйте, просто используйте ionViewWillEnter , чтобы получить ваш параметр, и не нужно использовать операцию ИЛИ при получении параметра, поэтому вот решение.

ionViewWillEnter(){
   this.id = navParams.get('idName')
}

, а затем используйте ionViewDidEnter для получения данных через сервис.

ionViewDidEnter(){
       this.api.getCategoryPosts(this.id).subscribe(data=>{
           console.log(data)
           this.getData = data
       },err=>{
           console.log(err)
       })
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...