【问题标题】:Angular Pagination : Display a set of A4 sized pagesAngular Pagination:显示一组 A4 大小的页面
【发布时间】:2020-05-17 00:37:32
【问题描述】:

我正在使用 NgbdPaginationBasic 进行分页 app.module.ts

import { NgbdPaginationBasic } from './pagination-basic';

我需要创建一组 A4 大小的页面,其中页眉和页脚仅在前两页中可见。我只在正文上应用了分页 app.html

    <table class="table">
      <tr>
        <th>id</th>
        <th>name</th>
        <th>email</th>
      </tr>
      <tr *ngFor="let item of data | slice: (page-1) * pageSize : (page-1) * pageSize + pageSize">
        <td>{{item.id}}</td>
        <td>{{item.first_name}}{{item.last_name}}</td>
        <td>{{item.email}}</td>
      </tr>
    </table>

这是我为演示创建的StackBlitz。分页在正文上运行良好,但页眉和页脚我希望它们在第二页之后隐藏。

有没有办法做到这一点或我可以使用任何其他工具或东西?页面的所有三个部分(页眉、正文、页脚)应具有相同的分页标记。

【问题讨论】:

  • 只需将*ngIf="page &lt; 3" 添加到页眉/页脚div。

标签: javascript html angular typescript pagination


【解决方案1】:

只需使用*ngIf,例如:

  <div style="border:1px solid black;margin-bottom:4px" *ngIf="page <= 2"> <---
    <hr/><span> HEADER </span><hr/>...

您的代码:

<div>
  <div style="border:1px solid black;margin-bottom:4px" *ngIf="page <= 2">
    <hr/><span> HEADER </span><hr/>
                            <div class="intro mt-3 ml-3">
                            <span>John Doe</span>
                            <br/>
                            <span>99/123.342 LAT Street</span>
                            <br/>
                            <span>Mars Community</span>
                            <br/>
                            <span>XYZ Country</span>
                            <br/>
                            <span>Ph. 123243423423</span>
                            <br/>
                            <br/>
                            <span class="mt-2">Dear John</span>
                            <br/>
                        </div>
  </div>
  <div style="border: 1px solid red">
    <hr/><span style="color : navy">MAIN BODY</span><hr/>
    <table class="table">
      <tr>
        <th>id</th>
        <th>name</th>
        <th>email</th>
      </tr>
      <tr *ngFor="let item of data | slice: (page-1) * pageSize : (page-1) * pageSize + pageSize">
        <td>{{item.id}}</td>
        <td>{{item.first_name}}{{item.last_name}}</td>
        <td>{{item.email}}</td>
      </tr>
    </table>
  </div>

  <div style="border :1px solid black;margin-top:3px" *ngIf="page <= 2">
    <hr/><span> Footer </span><hr/>
    <p><strong>PLEASE READ THIS</strong><p>
    <span>THIS IS THE FOOTER. HEADER AND FOOTER TO BE DISPLAYED FOR PAGES 1 and 2 ONLY </span>
  </div>


<div>
<ngb-pagination [pageSize]="25" [collectionSize]="100" [(page)]="page" aria-label="Default pagination"></ngb-pagination>
<hr>

希望对你有帮助!

【讨论】:

  • 谢谢,我可以将尺寸设置为 A4 页面的尺寸吗?比如如何设置自定义高度和宽度?
猜你喜欢
  • 1970-01-01
  • 2012-10-02
  • 1970-01-01
  • 2021-01-15
  • 2012-12-26
  • 2021-09-26
  • 2011-03-21
相关资源
最近更新 更多