You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何遍历JSON文件读取BLOCAGES下所有BLOCAGE的QTE与DTE字段

你当前代码仅提取了BLOCAGE数组的第一个元素,且用单个对象statusLine存储数据,因此只能展示一条记录。修改方法如下:

1. 修改prepareDataForBlocage方法

把原来提取单个元素的逻辑改为存储整个处理后的数组,同时兼容接口可能返回单个对象而非数组的极端场景,示例代码:

prepareDataForBlocage(response) {
    this.spinners.blockDetails = false;
    if (response['RETURNCODE'] == "OKK00") {
        const blocageList = response['BLOCAGES']['BLOCAGE'];
        this.statusLines = Array.isArray(blocageList) 
          ? blocageList.map(item => ({
              quantity: item['QTE'],
              update: item['DAT'] // 如果你实际需要提取的是DTE字段,把此处的DAT替换为DTE即可
            }))
          : [{
              quantity: blocageList['QTE'],
              update: blocageList['DAT']
            }];
    }
}

2. 修改HTML模板

用*ngFor指令遍历statusLines数组循环渲染行:
如果你的Angular版本支持同一元素同时使用*ngFor和*ngIf,可以直接写:

<table class="table table-striped">
   <tr style="background-color: #f8f9fa; font-weight: bold;">
      <td style="width: 13%;">Quantity</td>
      <td style="width: 13%;">Reason</td>
      <td style="width: 13%;">Date</td>
      <td style="width: 13%;">Référence</td>
   </tr>
   <tr *ngFor="let line of statusLines" *ngIf="line.quantity != 0">
      <td>
         {{line.quantity | number:'1.2-2' }}
      </td>
      <td></td>
      <td>
         {{line.update | dateddmmyyyy }}
      </td>
      <td>
      </td>
   </tr>
</table>

如果版本不支持两个结构型指令写在同一元素上,用<ng-container>包裹处理即可:

<table class="table table-striped">
   <tr style="background-color: #f8f9fa; font-weight: bold;">
      <td style="width: 13%;">Quantity</td>
      <td style="width: 13%;">Reason</td>
      <td style="width: 13%;">Date</td>
      <td style="width: 13%;">Référence</td>
   </tr>
   <ng-container *ngFor="let line of statusLines">
      <tr *ngIf="line.quantity != 0">
         <td>
            {{line.quantity | number:'1.2-2' }}
         </td>
         <td></td>
         <td>
            {{line.update | dateddmmyyyy }}
         </td>
         <td>
         </td>
      </tr>
   </ng-container>
</table>

内容的提问来源于stack exchange,提问作者user16969843

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 02:09:04