在Angular 6中使用功能齐全的Datatables插件 [英] Using full featured Datatables Plugin with Angular 6
问题描述
我正在尝试在我的angualar 6项目中添加Datatables插件(datatables.net). 我不确定如何使用npm installer将必要的css,js和其他必需的文件包括到我的项目中. 选择必要的选项后,我将使用以下NPM Install方法:
I am trying to add Datatables plugin (datatables.net) facility with my angualar 6 project. I am not sure how should I include the necessary css, js and other required files to my project with npm installer. After selecting my necessary options I am following the NPM Install method with these :
npm install --save datatables.net-bs4
npm install --save datatables.net-buttons-bs4
npm install --save datatables.net-colreorder-bs4
npm install --save datatables.net-responsive-bs4
npm install --save datatables.net-rowgroup-bs4
npm install --save datatables.net-scroller-bs4
安装后,我不确定如何在项目中使用它们.我的项目正在使用ngx-bootstrap( https://www.npmjs.com/package/ngx-bootstrap )进行样式设置.
After Installing, I am not sure how will I use these in my project. my project is using ngx-bootstrap (https://www.npmjs.com/package/ngx-bootstrap) for styling.
style.scss // where I am only importing my css theme from node_modules
在ngx-bootstrap中,样式是基于组件的,我很容易使用它们. 因此,如何将数据表功能用作组件? 换句话说,我应该在哪里包括CSS和必需的js文件,以实现页面上的数据表功能?
In ngx-bootstrap the styles are component wise, and I am using those easily. So, how can I use datatables features as a component ? In another way, where should I include the css, and required js files to achieve the datatables facilities on a page?
如果有人这样做,请告诉我,否则我们将不胜感激.
If anyone has done it please let me know, or any suggestions will be appreciated.
谢谢.
推荐答案
use angular data tables in Angular 6 angular-datatables
您需要先安装其依赖项,然后才能使用NPM获取最新版本:
npm install jquery --save
npm install datatables.net --save
npm install datatables.net-dt --save
npm install angular-datatables@6.0.0 --save
npm install @types/jquery --save-dev
npm install @types/datatables.net --save-dev
angular.json
在app.module.ts中导入DataTablesModule
import { DataTablesModule } from 'angular-datatables';
imports: [
DataTablesModule
],
我的datatableslibrary.ts
my datatableslibrary.ts
import { Component, OnDestroy, OnInit } from '@angular/core';
import { Http, Response } from '@angular/http';
import { Subject } from 'rxjs';
import { HttpClient } from '@angular/common/http';
import { DataService } from '../data.service';
@Component({
selector: 'app-datatableslibrary',
templateUrl: './datatableslibrary.component.html',
styleUrls: ['./datatableslibrary.component.css']
})
export class DatatableslibraryComponent implements OnInit, OnDestroy {
users$: any[] = [];
dtOptions: DataTables.Settings = {};
dtTrigger: Subject<any> = new Subject();
constructor(private http: HttpClient, private data: DataService) {
}
ngOnInit() {
this.dtOptions = {
pagingType: 'full_numbers',
pageLength: 5,
processing: true
};
this.data.getUsers().subscribe(data => {
this.users$ = data;
this.dtTrigger.next();
});
}
ngOnDestroy(): void {
this.dtTrigger.unsubscribe();
}
}
我的datatableslibrary.component.html
<table class="table table-striped table-bordered table-sm row-border hover" datatable [dtOptions]="dtOptions"
[dtTrigger]="dtTrigger">
<thead>
<tr>
<th>Name</th>
<th>Email</th>
<th>Website</th>
</tr>
</thead>
<tbody>
<tr *ngFor="let user of users$">
<td>{{ user.name }}</td>
<td>{{ user.email }}</td>
<td>{{ user.website }}</td>
</tr>
</tbody>
</table>
这篇关于在Angular 6中使用功能齐全的Datatables插件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!