Angular: как сделать * ngFor для ассоциативного массива - PullRequest
0 голосов
/ 04 января 2019

// dataJSON (массив)

dataList.const.ts

https://codebeautify.org/jsonviewer/cb28b09d

component.html

// 1st *ngFor (работает

<tr *ngFor="let item of list">
      <td>{{item.city.id}}</td>
      <td>{{item.city.name}}</td>
      <td>{{item.city.coord.lon}}</td>
      <td>{{item.city.coord.lat}}</td>
      <td>{{item.city.country}}</td>
      <td>{{item.city.population}}</td>
  </tr>

введите описание изображения здесь

// 2nd *ngFor (не отображается)

<tr *ngFor="let item of list">
        <td>
      {{item.list_}}
        </td>
        <td>
      {{item.list_.temp.day}} °C
        </td>
        <td>
      {{item.list_.temp.min}} °C
        </td>
        <td>
      {{item.list_.temp.max  }} °C
        </td>
        <td>
      {{item.list_.temp.night  }} °C
        </td>
        <td>
      {{item.list_.temp.eve  }} °C
        </td>
        <td>
      {{item.list_.temp.morn  }} °C
        </td>
        <td>
      {{item.list_.pressure}} hpa
        </td>
        <td>
      {{item.list_.humidity}} %
        </td>
        <td>
              {{item.list_.weather.id }}
        </td>
        <td>
      {{item.list_.weather.main }}
        </td>
        <td >
      {{item.list_.weather.description }}
        </td>
        <td>
      {{item.list_.weather.icon }}
        </td>
        <td>
      {{item.list_.speed}} meter/sec
        </td>
        <td>
      {{item.list_.deg}} °
        </td>
        <td>
      {{item.list_.clouds}} %
        </td>
        <td>
              {{item.list_.rain}}
        </td>
    </tr>

введите описание изображенияздесь

TQ для вашей помощи

1 Ответ

0 голосов
/ 04 января 2019

Вы можете взглянуть на это: ngFor внутри ngFor

В основном вы должны написать что-то вроде этого:

*ngFor = "let item of list"

И затем

*ngFor = "let l of item.list_"

Затем используйте

<td>{{l.temp.night}}</td>

https://stackblitz.com/edit/ngfor-example-pnuhfh

Это пример стекаблика для вашего ответа на основе ваших комментариев обратной связи.

Соответствующий кодФрагмент:

<tr *ngFor = "let item of fetchData">
  <td *ngFor = "let l of item.list_">
    {{l.dt}}|
    {{l.temp.night}}|
  </td>
</tr>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...