简体   繁体   English

如何在ionic 2中使用ng for显示详细信息

[英]how to display details using ng for in ionic 2

在此处输入图片说明 I doing thank you page in my project. 我在我的项目中做谢谢页面。 in success call it will display ORDER DETAILS and Delivery Details & Failure call it will display only ORDER DETAILS.. 在成功调用中,它将显示ORDER DETAILS(订单详细信息),在Delivery Details&Failure(失败详细信息)中,调用将仅显示ORDER DETAILS(订购详细信息)。

Success call is working fine but failure call not displaying order details... 成功呼叫工作正常,但失败呼叫未显示订单详细信息...

below is my html code.. 下面是我的html代码。

<!--
  Generated template for the ThankYouPage page.

  See http://ionicframework.com/docs/v2/components/#navigation for more info on
  Ionic pages and navigation.
-->
<ion-header>
  <ion-navbar>
    <ion-title>Order Summary</ion-title>
    <ion-buttons end>
        <button ion-button icon-only>
          <ion-icon name="share"></ion-icon>
        </button>  
     </ion-buttons>
  </ion-navbar>
</ion-header>

<ion-content>
  <div *ngIf="orderSuccess">
    <ion-item no-lines>
      <ion-row>
        <ion-icon ios="ios-checkmark-circle" md="md-checkmark-circle"  class="success"></ion-icon> 
      </ion-row>
      <ion-row class="text-center">
        <p>Thank you. Your order has been</p>
      </ion-row>   
      <ion-row class="text-center"><p>Successfully Placed.</p></ion-row>      
    </ion-item>
     <hr>
  </div>
    <div *ngIf="orderFailure">
      <ion-item>
        <ion-row>
          <ion-icon  ios="ios-close-circle" md="md-close-circle" class="failure"></ion-icon>
        </ion-row>
            <ion-row class="text-center">
              <p>Sorry! Failed to place your order.</p>
            </ion-row> 
            <ion-card>
            <ion-card-content>
                Your Order could not be completed because of the-"System Generated Issue"
            </ion-card-content>
            </ion-card>      
      </ion-item> 
    </div>
      <ion-item  *ngFor=" let item of orderDetailsArray">
       <div class="div"> Order Details </div> 
        <ion-row *ngIf="orderSuccess">
          <ion-col class="down">Order Date</ion-col><br>
            <ion-col class="down">{{item.date_added | date:'MMM-dd-yyyy'}}</ion-col>
        </ion-row>
          <ion-row  *ngIf="orderSuccess">
            <ion-col>Order number</ion-col><br>
            <ion-col>{{item.order_id}}</ion-col>
          </ion-row>
          <hr>
            <ion-row class="row">
              <ion-col class="lightbold">Order Total</ion-col><br>
              <ion-col class="bold">$ {{item.total}}</ion-col>
            </ion-row>
              <ion-row class="pay">
                <ion-col>Payment method:</ion-col><br>
                <ion-col class="color">{{item.payment_method}}</ion-col>
            </ion-row>
      </ion-item>
        <div *ngIf="orderSuccess">
          <ion-item  *ngFor=" let item of orderDetailsArray">
           <div class="div"> Delivery Details </div> 
             <div class="font">
               <div>{{item.shipping_firstname}}&nbsp;&nbsp;{{item.shipping_lastname}}</div>

                 <div>{{item.shipping_address_1}}&nbsp;,&nbsp;{{item.shipping_address_2}}</div>

                   <div>{{item.shipping_city}},&nbsp;{{item.shipping_postcode}}</div>

                     <div>{{item.shipping_zone}}</div>

                       <div class="phone">
                        <ion-icon  ios="ios-call" md="md-call" item-left></ion-icon>
                         <span>{{item.telephone}}</span>
                       </div>
                        <div class="mail">
                          <ion-icon  ios="ios-mail" md="md-mail" item-left></ion-icon> 
                          <span>{{item.email}}</span>
                        </div> 
              </div>
            </ion-item>
          </div>
</ion-content>
  <ion-footer>
   <ion-toolbar color="primary">
    <div *ngIf="orderSuccess">
      <ion-row  class="center" (click)="submit();"> GO BACK HOME </ion-row>
    </div>
    <div *ngIf="orderFailure">
      <ion-row  class="center" (click)="submit();"> GO BACK HOME </ion-row>
    </div>
  </ion-toolbar>
</ion-footer> 

below is my ts file... 以下是我的ts文件...

import { Component } from '@angular/core';

import { NavController } from 'ionic-angular';

import { Rest } from '../../providers/network/rest';

import { Logger } from '../../providers/logger/logger';



/*
  Generated class for the ThankYou page.

  See http://ionicframework.com/docs/v2/components/#navigation for more info on
  Ionic pages and navigation.
*/
@Component({
  selector: 'page-thank-you',
  templateUrl: 'thank-you.html'
})
 export class ThankYouPage {

  orderDetailsArray = [];

  public orderSuccess:boolean =false;

  public orderFailure:boolean =false;

  constructor(public navCtrl: NavController,
              public rest: Rest,
              public logger: Logger) {}

    ionViewDidLoad() {

    this.rest.get('/getOrder&order_id=0')
    .subscribe((result) => {
        console.log("checking getOrder"+JSON.stringify(result));
        if(result.status == '1'){
          console.log("success of getOrder");
          this.orderDetailsArray=result.order;
          this.orderSuccess=true;      
        }

        else{
          console.log("error of getOrder");
          this.orderFailure = true;
        }

    })
  }

   submit(){
      //this.navCtrl.setRoot(HomePage,{});
   }
   notSubmit(){
      //this.navCtrl.push(PaymentPage,{});
   }

}

Success call is working fine but failure call is not displaying order details... 成功呼叫工作正常,但失败呼叫未显示订单详细信息...

It's because you are only setting the orderDetailsArray if your result.status is 1 ! 这是因为只有在result.status1时才设置orderDetailsArray

You should do it like this: 您应该这样做:

ionViewDidLoad() {
   this.rest.get('/getOrder&order_id=0')
      .subscribe((result) => {
         console.log("checking getOrder"+JSON.stringify(result));

         this.orderDetailsArray=result.order; // <-- place it here !

         if(result.status == '1') {
            console.log("success of getOrder");
            this.orderSuccess=true;      
         }
         else {
            console.log("error of getOrder");
            this.orderFailure = true;
         }
   });
}

您也可以使用此方法将result.status转换为Integer。请尝试执行此操作,因为状态应始终为整数类型,并且您使用的是字符串。希望对您有所帮助。

 if(((result.status)*1) == 1) {...}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何使用JSON仅显示Linda的详细信息 - How do I display only details of Linda using JSON 如何在 HTML 中不显示箭头<details>在 Safari 浏览器上不使用 CSS</details> - how to not display arrow in HTML <details> without using CSS on Safari browser 如何使用angularjs动态显示具有收入详细信息和扣除详细信息的对象数组? - How to display array of object which is having the earning details and deduction details using angularjs dynamically? 如何在第二页上显示详细信息? - How to display details on second page? 如何使用AngularJS使用ng-bind和ng-repeat显示 - How to display using ng-bind and ng-repeat using AngularJS 如何使用ng-repeat显示数组/对象 - How do I display an array / object using ng-repeat 如何在AngularJS 1中使用ng-view显示视图? - How to display view using ng-view in AngularJS 1? 如何使用 ng-forms 显示当前时间 - How to display current time using ng-forms 当键是整数字符串时,如何使用 *ng-For 在 ionic 中显示 JSON 数组? - How do you show JSON array in ionic using *ng-For when the keys are integer strings? 如何动态使用Ionic 2自动单击“欢迎页面”部分中的显示ng-repeat值? - How to Do Auto Click Displaying ng-repeat value in Welcome Page Section Using Ionic 2 Dynamically?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM