如何使用我在Ionic中从REST api检索的结果

时间:2018-05-10 15:05:33

标签: angularjs json rest ionic-framework

我目前正在使用RESTful服务从我的数据库中检索数据。我已成功从db中读取数据,但是,我无法使用我检索到的数据。主要是因为我不知道如何将json存储到变量中。

以下是我的代码

变量我已声明存储结果

users: any;

从rest api中检索的方法

getUser(username:string, pw:string){
    this.restProvider.getUsers(username, pw)
      .subscribe(userList => {console.log(userList);

        this.users = userList.result},

        () => { console.log(this.users); });
  }

使用结果的方法

pressLogIn(event){

    this.getUser(this.username, this.pw);

    console.log(users)
  }

1 个答案:

答案 0 :(得分:0)

<强>的login.html

<form (submit)="getUser()" [formGroup]="loginForm">

  <ion-item>
    <ion-label fixed>
      <ion-icon name="person" color="primary"></ion-icon>
    </ion-label>
    <ion-input type="text" placeholder="System ID" formControlName="username"></ion-input>
  </ion-item>

  <ion-item>
    <ion-label fixed>
      <ion-icon name="lock" color="primary"></ion-icon>
    </ion-label>
    <ion-input type="password" placeholder="Password" formControlName="pw"></ion-input>

  </ion-item>

  <p color="danger" ion-text *ngIf="loginError">{{loginError}}</p>

  <button type="submit" ion-button mode="ios" block [disabled]="loginForm.invalid">Login</button>
</form>

<强> login.ts

public getUser() {
this.loading = this.loadingController.create({ content: 'Please Wait...' });
this.loading.present();
this.loginError = '';
this.restProvider.getUser(
  this.loginForm.get('username').value,
  this.loginForm.get('pw').value).subscribe((userList: any) => {
    this.users = userList.result
    this.loading.dismiss();
  }, err => {
    this.loginError = "Something went wrong, please try again";
    this.loading.dismiss();
  }, () => {
console.log(this.users);
  })


}

注意:如果您使用模板驱动表单然后相应修改,我使用了反应形式