Список всегда пуст, но я уже получаю ответные данные Ionic 3 - PullRequest
0 голосов
/ 24 мая 2018

enter image description here Я пытаюсь получить данные из веб-API, а затем сохранить ответ JSON в мой список.Но я не знаю, почему мой список всегда пуст.Несмотря на то, что мой ответ не нулевой, я уже следую учебному пособию в Интернете, но я не знаю, почему я не могу сделать эту работу.Мой код службы отдыха

import { Injectable } from '@angular/core';
import {Http, RequestOptions, Headers} from '@angular/http';
import 'rxjs/add/operator/map';


/*
  Generated class for the RestProvider provider.

  See https://angular.io/guide/dependency-injection for more info on providers
  and Angular DI.
*/
@Injectable()
export class RestProvider {

  constructor(public http: Http) {
    console.log('Hello RestProvider Provider');
  }
  searchMovies() {
    var url = 'http://192.168.0.112:44444/api/prgetlist ';
    var body = {
      "parmClaimsUser" :"ClaimGuy@MyApp.com",
      "parmCompany" :"APU"
    } 
    let headers = new Headers();
    headers.append('Content-Type', 'application/json');
    let options = new RequestOptions({ headers: headers });
    var response = this.http.post(url,body, options ).map(res => res.json());
    return response;
}    
}

Код моей страницы

import {Component} from '@angular/core';
import {HttpClient} from "@angular/common/http/src/client"
import {Geolocation} from '@ionic-native/geolocation';
import { Http } from '@angular/http';
import {RestProvider} from '../../providers/rest/rest'
import 'rxjs/add/operator/map';
@Component({
 selector:'person-home',
 templateUrl: 'person.html'
})

 export class PersonPage{
    name : any;
     constructor(public http: Http, private restprovider: RestProvider){

     }
     ionViewWillEnter(){
       this.restprovider.searchMovies().subscribe(
          data => {

              this.name = JSON.stringify(data);
              let names = JSON.stringify(data);
              alert(names);
          },
          err => {
              alert(err)
          }
       );
     }

 }

Мой HTML

<ion-header>
    <ion-navbar>
        <ion-title>
            Person
        </ion-title>
    </ion-navbar>
</ion-header>
<ion-content>
    <ion-list inset *ngFor="let data of item">\
        <ion-item>
                <h2>{{name.parmPurchReqId}}</h2>
                <p>{{name.parmPurchReqName}}</p>
        </ion-item>

      </ion-list>
</ion-content>

Я не знаю, почему он не работает, я искалэто в интернете вроде 10 часов но результат все тот же.Можете ли вы просмотреть мой код здесь и сказать, почему он не работает, спасибо заранее

Ответы [ 2 ]

0 голосов
/ 24 мая 2018

Можно попробовать

<ion-list inset *ngFor="let data of name">
    <ion-item>
            <h2>{{data.parmPurchReqId}}</h2>
            <p>{{data.parmPurchReqName}}</p>
    </ion-item>

  </ion-list>
0 голосов
/ 24 мая 2018

Имя переменной неверно.вы используете переменную как name

this.name = JSON.stringify(data);// please remove JSON.stringify as well. 

, но вы используете переменную в ngFor как item.Это проблема.

Так что попробуйте этот код ниже вместо вашего ..

  <ion-list inset *ngFor="let data of name">
    <ion-item>
            <h2>{{data.parmPurchReqId}}</h2>
            <p>{{data.parmPurchReqName}}</p>
    </ion-item>

  </ion-list>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...