如何使用post方法在ionViewWillEnter中显示离子数据?

时间:2019-06-18 06:43:03

标签: laravel ionic-framework postman

我不知道如何显示从API到离子应用程序的数据。我不知道如何在显示数据时使用本地存储或navParams

我尝试过的是我在ionViewWillEnter中使用post方法来调用ionic中的数据。

下面的

是调用所有数据的成功API。 .api

    public function viewProfileClinic(Request $request)
        {
            $id =$request->id;
            $clinicID = $request->clinic_id;

            $count = RegisterClinic::where('clinic_id',$clinicID)->count();

            if($count == 1)
            {
                $clinicData = RegisterClinic::where('clinic_id',$clinicID)->first();        
                $callEmailTelno = User::where('id',$clinicData->uid)->first();

                    $datamsg = response()->json([
                        'callemailtelno' => 'Email:'.$callEmailTelno->email.'Telno:'.$callEmailTelno->telno,
                        'clinicdata' => $clinicData 

                    ]);
                    return $datamsg->content();

            }
            else{

                $datamsg = response()->json([
                    'error' => array("text"=>"No clinic data.")
                ]);
                return $datamsg->content();
            }
        }

如何显示从该API返回到离子的数据? 以下是我在__ .ts__文件中尝试过的内容。

cprofile.ts

    ionViewWillEnter(){

        this.authService.postData(this.id,'viewProfileClinic').then((result) => {
          this.responsedata = result;
          console.log(result);
          if(this.responsedata.callemailtelno && this.responsedata.clinicdata)
          { 

              localStorage.setItem('callemailtelno', JSON.stringify(this.responsedata.callemailtelno));
              console.log(this.responsedata.callemailtelno);  
              const data = this.navParams.get('data');


                this.usersClinic.email = data.email;
                this.usersClinic.telno = data.telno;
                this.clinic_regno = data.clinic_regno;
                this.clinic_name = data.clinic_name;
                this.site = data.site;
                this.clinic_address = data.clinic_address;
                this.zip = data.zip;
                this.city = data.city;
                this.state = data.state;

          }
          else
          {
              this.presentError(this.responsedata.error.text);
              console.log(this.responsedata.error);
          }
        },(err) =>{

        });
  }

.cprofile.html

<ion-list>
<p>Clinic Profile</p>
 <form #f="ngForm" (ngSubmit)="onSubmit(f)" class="list-form">
        <ion-item>
        <ion-label stacked>Clinic Email</ion-label>
        <ion-input type="text" name="usersClinic.email" [(ngModel)]="usersClinic.email">{{usersClinic.email}}</ion-input>
        </ion-item>

        <ion-item>
        <ion-label stacked>Telephone no.</ion-label>
        <ion-input type="text" name="usersClinic.telno" [(ngModel)]="usersClinic.telno">{{usersClinic.telno}}</ion-input>
        </ion-item>

        <button ion-button color="light" class="transparent-button" [disabled]="!f.valid" text-center round>
          Edit
        </button>
      </form>
      <ion-item>
        <p>Clinic Registration no</p>
        {{clinic_regno}}
      </ion-item>
      <ion-item>
          <p>Clinic Name</p>
          {{clinic_name}}
      </ion-item> 
      <ion-item>
          <p>Clinic Site</p>
          {{site}}
      </ion-item>
      <ion-item>
          <!-- <p>Clinic Address</p>  -->
          <ion-label primary>Clinic Address</ion-label>
           <!-- <ion-textarea>{{clinic_address}},{{zip}},{{city}},{{state}}.</ion-textarea> -->
           <ion-textarea rows="6" disabled [value]="clinic_address" ></ion-textarea>
      </ion-item>


    </ion-list>

我想要的是能够以离子形式显示的数据。 因为所有数据都可以在邮递员测试运行API时显示。

1 个答案:

答案 0 :(得分:1)

请尝试使用此代码显示数据

select t.ID,
       t.[user],
       stuff( (select ',' + t2.[group] from @t t2 where t2.ID = t.ID for XML path(''), type).value('.', 'NVARCHAR(MAX)'), 1, 1, '') as [group]  
from   ( SELECT server01.customer05.user.id, 
                server01.customer05.user.namename as [user], 
                server01.customer05.groups.name as [group] 
         FROM   server01.customer05.username
           INNER JOIN customer05.bgrel ON server01.customer05.id=server01.customer05.bgrel.username_id
           INNER JOIN customer05.groups ON customer05.groups.id=customer05.bgrel.groups_id
         WHERE  server01.customer05.username != 'ANONYMOUS' 
         and    server01.customer05.username != 'INST_ROOT' 
         and    server01.customer05.username != 'SERVER_ROOT_3'
       ) t  
group by t.ID, t.[user]