0

我有下一个问题:建筑

<p-dataTable [value]="listOfAddresses" [expandableRows]="true" [expandedRows]="listOfAddresses" ">
    <p-column>
        <ng-template let-item="rowData" let-i="rowIndex" pTemplate="body">
                {{i+1}}
        </ng-template>
    </p-column>
    <p-column >
         <ng-template ngFor let-item [ngForOf]="listOfOriginalAddresses" pTemplate="body">
             {{item.Street + " " + item.City}}   
         </ng-template>
    </p-column>
</p-table>

返回 item.Street 和 item.City Strange 的未定义值,因为如果我使用

<p-column >
   <ng-template pTemplate="body">
      <div *ngFor="let item of listOfOriginalAddresses">
          {{item.Street + " " + item.City}}   
     </div>
   </ng-template>
</p-column>

我有所有必需的值,但行中的所有列表。问题是什么?提前致谢

4

2 回答 2

0

使用 [Elvis operator][1],通过 ? 它将检查对象是否已定义

{{item?.Street + " " + item?.City}} 
于 2017-12-11T08:15:03.493 回答
-1

解决了,但没有使用 ngFor。

我创建管道:

 transform(value: any): any {
        let item = value;
        return (item.Street + " " + item.Country);
    }

此外,地址包的字段中的数据不会根据版本而变化,这解决了另一个头疼的问题。

于 2017-12-12T08:07:11.793 回答