如何使用模板

问题描述 投票:8回答:1

我有一个非常基本的问题,我无法自己回答,因为大多数链接到http://www.primefaces.org/primeng都不再适用了。我也尝试注册他们的论坛,但他们的激活邮件永远不会到来。

我使用Angular2并拥有一个包含两列的数据表:filename和status。我想要更改的状态列。它现在拥有1到4的数字,我想根据状态显示一个glyphicon。

我现在有这个,这是有效的:

<p-dataTable [hidden]="loading" [value]="files" selectionMode="single"  sortField="Status" [sortOrder]="-1">
  <p-column field="FileName" header="Naam" sortable="true"></p-column>
  <p-column field="Status" header="Status" sortable="true"></p-column>
</p-dataTable>

我试过这个,只是为了测试模板,但没有任何变化:

<p-dataTable [hidden]="loading" [value]="files" selectionMode="single"  sortField="Status" [sortOrder]="-1">
  <p-column field="FileName" header="Naam" sortable="true"></p-column>
  <p-column field="Status" header="Status" sortable="true">
    <template let-file="rowData">
        {{file.Status == 1 ? "Yes" : "No"}}
    </template>
  </p-column>
</p-dataTable>

所以除了得出结论我没有正确使用它。

我们正在使用PrimeNG 1.0.0-beta.16

angular datatable angular2-template primeng
1个回答
18
投票

每个p-column可以有两个模板 - bodyheader,你应该指定它是哪一个。这不是强制性的,因为我认为body是默认的,这是你在这种情况下所需要的,但这是一个很好的做法。你还需要将pTemplate添加到模板中以便p-column使用它,这就是p-column不会显示你提供的模板的原因。所以,你的代码应该是这样的:

<p-dataTable [hidden]="loading" [value]="files" selectionMode="single" sortField="Status" [sortOrder]="-1">
  <p-column field="FileName" header="Naam" sortable="true"></p-column>
  <p-column field="Status" header="Status" sortable="true">
    <ng-template let-file="rowData" pTemplate type="body">
        {{file.Status == 1 ? "Yes" : "No"}}
    </ng-template>
  </p-column>
</p-dataTable>
© www.soinside.com 2019 - 2024. All rights reserved.