Как отобразить данные Json в Nativescript - PullRequest
0 голосов
/ 27 июня 2018

Я хочу отобразить на странице все значения. У меня есть этот JSON.

    res {
       "StatusCode": 0,
       "StatusMessage": "OK",
       "StatusDescription": [
         {
           "sensors": [
             {
               "serial": "sensor1",
               "id": "1"
             },
   {
               "serial": "sensor2",
               "id": "2"
             },
             {
               "serial": "sensor3",
               "id": "3"
             }
           ],
           "HBP_id": "12",
           "HB_id": "123",
          "serial_number": "hb1",
          "note": "test"
        }
       ]
     }

Я хочу отобразить в Nativescript:

serial_number: hb1
sensors : sensor1

Я попробовал этот код, но с этим я могу показать только serial_number:

   <StackLayout class="page">
        <ListView [items]="items" class="list-group">
             <ng-template let-item="item">
                 <Label [text]="item.serial_number"
                  class="list-group-item"></Label>
             </ng-template>
        </ListView>
   </StackLayout>

Пожалуйста, можете ли вы спросить меня, какая идея, как отображать и серийный?

Спасибо

Решение:

<ListView [items]="items" (itemTap)="onItemTap($event)">
                    <ng-template let-item="item" let-i="index" let-odd="odd" let-even="even">
                        <StackLayout [class.odd]="odd" [class.even]="even">
                            <Label [text]="item.serial_number"></Label>
                            <Label *ngFor="let subItem of item?.sensors" [text]="subItem.serial"></Label>
                        </StackLayout>
                    </ng-template>
                </ListView>

1 Ответ

0 голосов
/ 27 июня 2018

Вы можете попробовать вложенный <ng-template>

<StackLayout class="page">
    <ListView [items]="items" class="list-group">
         <ng-template let-item="item">
             <Label [text]="item.serial_number"
              class="list-group-item"></Label>
             <ng-template *ngFor="let subItem of item?.sensors">
                  <Label [text]="subItem.serial"
                      class="list-group-item"></Label>
             </ng-template>
         </ng-template>
    </ListView>
</StackLayout>

Если вы не хотите использовать ngFor, используйте let-subItem="item?.sensors".

Это может помочь тебе !!

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