angular 4带有bootstrap 4数据表

前端之家收集整理的这篇文章主要介绍了angular 4带有bootstrap 4数据表前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要使用一个带有角度4和bootstrap 4的表,但是bootstrap 4官方表看起来并不太好.
我找到了这个git项目:
https://www.npmjs.com/package/angular-4-data-table-fix

但无法找到有关如何使用它的任何文档.
有谁知道这个项目或类似的项目,可以帮助吗?

谢谢.

你可以在这里看到代码https://github.com/ggmod/angular-2-data-table-demo/tree/master/app

基本上,您为表创建一个新组件,如下所示(取自上面的示例):

  1. import { Component } from '@angular/core';
  2. import { DataTableResource } from 'angular-2-data-table';
  3. import persons from './data-table-demo1-data';
  4.  
  5.  
  6. @Component({
  7. selector: 'data-table-demo-1',providers: [],templateUrl: 'app/demo1/data-table-demo1.html',styleUrls: ['app/demo1/data-table-demo1.css']
  8. })
  9. export class DataTableDemo1 {
  10.  
  11. itemResource = new DataTableResource(persons);
  12. items = [];
  13. itemCount = 0;
  14.  
  15. constructor() {
  16. this.itemResource.count().then(count => this.itemCount = count);
  17. }
  18.  
  19. reloadItems(params) {
  20. this.itemResource.query(params).then(items => this.items = items);
  21. }
  22.  
  23. // special properties:
  24.  
  25. rowClick(rowEvent) {
  26. console.log('Clicked: ' + rowEvent.row.item.name);
  27. }
  28.  
  29. rowDoubleClick(rowEvent) {
  30. alert('Double clicked: ' + rowEvent.row.item.name);
  31. }
  32.  
  33. rowTooltip(item) { return item.jobTitle; }
  34. }

和模板HTML文件

  1. <div style="margin: auto; max-width: 1000px; margin-bottom: 50px;">
  2. <data-table id="persons-grid"
  3. headerTitle="Employees"
  4. [items]="items"
  5. [itemCount]="itemCount"
  6. (reload)="reloadItems($event)"
  7.  
  8. (rowClick)="rowClick($event)"
  9. (rowDoubleClick)="rowDoubleClick($event)"
  10. [rowTooltip]="rowTooltip"
  11. >
  12. <data-table-column
  13. [property]="'name'"
  14. [header]="'Name'"
  15. [sortable]="true"
  16. [resizable]="true">
  17. </data-table-column>
  18. <data-table-column
  19. [property]="'date'"
  20. [header]="'Date'"
  21. [sortable]="true">
  22. <template #dataTableCell let-item="item">
  23. <span>{{item.date | date:'yyyy-MM-dd'}}</span>
  24. </template>
  25. </data-table-column>
  26. <data-table-column
  27. property="phoneNumber"
  28. header="Phone number"
  29. width="150px">
  30. </data-table-column>
  31. <data-table-column
  32. [property]="'jobTitle'"
  33. [header]="'Job title'"
  34. [visible]="false">
  35. </data-table-column>
  36. <data-table-column
  37. [property]="'active'"
  38. [header]="'Active'"
  39. [width]="100"
  40. [resizable]="true">
  41. <template #dataTableHeader let-item="item">
  42. <span style="color: rgb(232,0)">Active</span>
  43. </template>
  44. <template #dataTableCell let-item="item">
  45. <span style="color: grey">
  46. <span class="glyphicon glyphicon-ok" *ngIf="item.active"></span>
  47. <span class="glyphicon glyphicon-remove" *ngIf="!item.active"></span>
  48. </span>
  49. </template>
  50. </data-table-column>
  51. </data-table>
  52. </div>

当然,在您的情况下,数据源和结构可能不同,因此您需要将此代码调整为所需的结构.

记得在app.module.ts中声明你的组件然后你可以使用它,比如在app.component.html中,就像在示例中一样,data-table-demo-1是你的组件,其中包含表:

  1. <div style="padding: 25px">
  2. <data-table-demo-1></data-table-demo-1>
  3. </div>

编辑:您还必须导入数据表模块,如下所示:

从’angular-2-data-table’导入{DataTableModule}; //或angular-4-data-table

那么app.module.ts可能看起来像这样:

  1. import { BrowserModule } from '@angular/platform-browser';
  2. import { NgModule } from '@angular/core';
  3.  
  4. import { AppComponent } from './app.component';
  5. import { TableComponent } from './table/table.component';
  6.  
  7. import { DataTableModule } from 'angular-4-data-table'; // notice this
  8.  
  9. @NgModule({
  10. declarations: [
  11. AppComponent,TableComponent
  12. ],imports: [
  13. BrowserModule,DataTableModule // notice this one
  14. ],bootstrap: [AppComponent]
  15. })
  16. export class AppModule { }

猜你在找的Angularjs相关文章