美文网首页
关于ngx-datatable可拉伸表格

关于ngx-datatable可拉伸表格

作者: 简小咖 | 来源:发表于2018-04-02 13:29 被阅读0次

    官网
    https://swimlane.gitbooks.io/ngx-datatable/content/introduction/getting-started.html

    http://swimlane.github.io/ngx-datatable/

    WX20180112-153854.png
    • 安装
      npm install @swimlane/ngx-datatable
    • 引入
      module.ts
    import { NgModule } from '@angular/core';
    import { BrowserModule } from '@angular/platform-browser';
    import { NgxDatatableModule } from '@swimlane/ngx-datatable';
    
    import { AppComponent } from './app.component';
    
    @NgModule({
      declarations: [AppComponent],
      imports: [NgxDatatableModule, BrowserModule],
      bootstrap: [AppComponent]
    })
    export class AppModule { }
    
    • html
    <ngx-datatable #dataTable class="material striped" [messages]="localizationMessage" [rows]="rows" [columnMode]="'force'"
        [headerHeight]="40" [rowHeight]="40" [footerHeight]="40" [externalPaging]="true" [count]="pagination.totalResults" [offset]="pagination.currentPage"
        [limit]="pagination.pageSize" [scrollbarH]="true" [selected]="selectedRows" [selectionType]="'single'" (activate)="onActivate($event)"
        (page)='setPage($event)' [rowIdentity]="getRowIdentity" [reorderable]="true">
        <ngx-datatable-column name="序号" prop="index" [width]="60"></ngx-datatable-column>
        <ngx-datatable-column name="用户名" prop="userName"></ngx-datatable-column>
        <ngx-datatable-column name="地址">  //可跳转
          <ng-template ngx-datatable-cell-template let-row="row">
            <div class="hn-log-info" (click)="presentToast(row?.uri)">{{row?.uri}}</div>
          </ng-template>
        </ngx-datatable-column>
      </ngx-datatable>
    
    • js
    public rows = [];
     public selectedRows = [];
      public pagination: any = {
        "totalResults": 0,
        "currentPage": 0,
        "pageSize": 0
      }
      public localizationMessage = {
        emptyMessage: '未找到任何数据!',
        totalMessage: '条记录',
        selectedMessage: '已选中'
      }
    getRowIdentity(rowData) {
        return rowData.index;
      }
    
      setPage(pageInfo) {
        this.pagination.currentPage = pageInfo.offset;
        this.currentPage = pageInfo.offset;
        this.getLogs();
      }
    
      transDataToTableData(data) {
        this.pagination = data.pagination;
        let dataRows = [];
        if (data.xx) {
          data.xx.forEach((item,index) => {
            dataRows.push({
              index: index+1 + this.pagination.pageSize*this.pagination.currentPage,
              userName: item.userName,
      
              uri: item.uri,
            });
          });
        }
        this.rows = dataRows;
      }
      onSelect(info) {
      }
    
      onActivate(info) {
    
      }
      onToggleSideMenu(status: any) {
        this.rows = [...this.rows];
      }
    

    -接口调用

    if (res&& res.data) {
        this.transDataToTableData( res["data"] );
     }
    

    相关文章

      网友评论

          本文标题:关于ngx-datatable可拉伸表格

          本文链接:https://www.haomeiwen.com/subject/azefoxtx.html