【问题标题】:Angular 4 + primeng : pass HTML content from a component to anotherAngular 4 + primeng:将 HTML 内容从一个组件传递到另一个
【发布时间】:2017-07-31 13:03:09
【问题描述】:

我想在多个位置向primeng数据表(p-datatable)添加一些服务器端分页功能,因此我声明了一个具有我需要的功能和行为的新组件“pagin-datatable.component”。

所以pagin-datatable.component.html(模板)自带:

<p-dataTable [value]="value" 
  resizableColumns="true" 
  scrollable="true" 
  scrollWidth="100%" 
  [(rows)]="this.gridOptions.rows" 
  [paginator]="true" 
  [lazy]="true" 
  [totalRecords]="nbTotal" 
  (onFilter)="filtrage($event)"
  (onPage)="pagination($event)" 
  (onSort)="tri($event)" 
  [rowsPerPageOptions]="rowsPerPageOptions" >
  /* There should be the p-columns */
</p-dataTable>

我希望我的 p 列仍然在我的 ma​​in.component.html 中声明,例如:

<pagin-datatable [value]="partenaires" (pagin)="refresh($event)" [rowsPerPageOptions]="[5,10,20,40]">
        <p-column sortable="true" [filter]="true" field="aField"     header="A HEADER"></p-column>
        /* And so it goes for every other p-columns */
 </pagin-datatable>

我的问题如下:如何告诉我的页面组件让 p-datatable 处理发送到组件标签中的内容?

在下面回答之后:

找到这篇文章来解决primeng问题:github.com/primefaces/primeng/issues/1215。

【问题讨论】:

    标签: angular datatable primeng primeng-datatable angular2-ngcontent


    【解决方案1】:

    你可以像这样在pagin-datatable.component.html中使用

        <p-dataTable [value]="value" 
      resizableColumns="true" 
      scrollable="true" 
      scrollWidth="100%" 
      [(rows)]="this.gridOptions.rows" 
      [paginator]="true" 
      [lazy]="true" 
      [totalRecords]="nbTotal" 
      (onFilter)="filtrage($event)"
      (onPage)="pagination($event)" 
      (onSort)="tri($event)" 
      [rowsPerPageOptions]="rowsPerPageOptions" >
      /* There should be the p-columns */
      <ng-content></ng-content>
    </p-dataTable>
    

    在您的 ma​​in.component.html 中,您可以根据需要扭曲 pagin-datatable 中的列。

    【讨论】:

    • 完全忘记了 Angular 的这个主要特性……谢谢。但是,生命周期会阻止表恢复 p 列。找到这篇文章(通过输入 ng-content + primeng)来解决问题:github.com/primefaces/primeng/issues/1215。完美运行!
    猜你喜欢
    • 2017-11-29
    • 1970-01-01
    • 2019-07-04
    • 2021-07-08
    • 1970-01-01
    • 2018-05-08
    • 2021-10-31
    • 2019-09-02
    相关资源
    最近更新 更多