Skip to content
This repository was archived by the owner on Feb 2, 2025. It is now read-only.

Fixed columns extension documentation added #1761

Merged
merged 4 commits into from
Dec 17, 2023
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 8 additions & 4 deletions demo/angular.json
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,8 @@
"node_modules/materialize-css/dist/css/materialize.css",
"node_modules/prism-themes/themes/prism-material-dark.css",
"src/styles.css",
"node_modules/prismjs/plugins/toolbar/prism-toolbar.css"
"node_modules/prismjs/plugins/toolbar/prism-toolbar.css",
"node_modules/datatables.net-fixedcolumns-bs4/css/fixedColumns.bootstrap4.css"
],
"scripts": [
"node_modules/jquery/dist/jquery.js",
Expand All @@ -58,7 +59,8 @@
"node_modules/prismjs/components/prism-bash.min.js",
"node_modules/prismjs/plugins/toolbar/prism-toolbar.min.js",
"node_modules/clipboard/dist/clipboard.min.js",
"node_modules/prismjs/plugins/copy-to-clipboard/prism-copy-to-clipboard.min.js"
"node_modules/prismjs/plugins/copy-to-clipboard/prism-copy-to-clipboard.min.js",
"node_modules/datatables.net-fixedcolumns/js/dataTables.fixedColumns.js"
],
"vendorChunk": true,
"extractLicenses": false,
Expand Down Expand Up @@ -123,7 +125,8 @@
"node_modules/datatables.net-buttons/js/buttons.print.js",
"node_modules/datatables.net-colreorder/js/dataTables.colReorder.js",
"node_modules/datatables.net-responsive/js/dataTables.responsive.js",
"node_modules/datatables.net-select/js/dataTables.select.js"
"node_modules/datatables.net-select/js/dataTables.select.js",
"node_modules/datatables.net-fixedcolumns/js/dataTables.fixedColumns.js"
],
"styles": [
"node_modules/datatables.net-dt/css/jquery.dataTables.css",
Expand All @@ -132,7 +135,8 @@
"node_modules/datatables.net-responsive-dt/css/responsive.dataTables.css",
"node_modules/datatables.net-select-dt/css/select.dataTables.css",
"node_modules/materialize-css/dist/css/materialize.css",
"src/styles.css"
"src/styles.css",
"node_modules/datatables.net-fixedcolumns-bs4/css/fixedColumns.bootstrap4.css"
],
"assets": [
"src/assets",
Expand Down
38 changes: 34 additions & 4 deletions demo/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 2 additions & 0 deletions demo/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,8 @@
"datatables.net-colreorder": "^1.5.5",
"datatables.net-colreorder-dt": "^1.5.5",
"datatables.net-dt": "^1.11.3",
"datatables.net-fixedcolumns": "^4.3.0",
"datatables.net-fixedcolumns-bs4": "^4.3.0",
"datatables.net-responsive": "^2.2.9",
"datatables.net-responsive-dt": "^2.2.9",
"datatables.net-scroller": "^2.0.5",
Expand Down
3 changes: 3 additions & 0 deletions demo/src/app/app.component.html
Original file line number Diff line number Diff line change
Expand Up @@ -110,6 +110,9 @@ <h3>
<li>
<a class="waves-effect waves-blue" routerLink="/extensions/select">Select extension</a>
</li>
<li>
<a class="waves-effect waves-blue" routerLink="/extensions/fixed-columns">Fixed Columns extension</a>
</li>
</ul>
</div>
</li>
Expand Down
2 changes: 2 additions & 0 deletions demo/src/app/app.module.ts
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@ import { RouterLinkComponent } from './advanced/router-link.component';
// Using extension examples
import { ButtonsExtensionComponent } from './extensions/buttons-extension.component';
import { ColreorderExtensionComponent } from './extensions/colreorder-extension.component';
import { FixedColumnsExtensionComponent } from './extensions/fixed-columns-extension.component';
import { ResponsiveExtensionComponent } from './extensions/responsive-extension.component';
import { SelectExtensionComponent } from './extensions/select-extension.component';
import { UsingNgPipeComponent } from './advanced/using-ng-pipe.component';
Expand Down Expand Up @@ -73,6 +74,7 @@ import { NewServerSideComponent } from './basic/new-server-side/new-server-side.

ButtonsExtensionComponent,
ColreorderExtensionComponent,
FixedColumnsExtensionComponent,
ResponsiveExtensionComponent,
SelectExtensionComponent,
UsingNgPipeComponent,
Expand Down
5 changes: 5 additions & 0 deletions demo/src/app/app.routing.ts
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ import { UsingNgTemplateRefComponent } from './advanced/using-ng-template-ref.co
import { MoreHelpComponent } from './more-help/more-help.component';
import { WithAjaxCallbackComponent } from './basic/with-ajax-callback/with-ajax-callback.component';
import { NewServerSideComponent } from './basic/new-server-side/new-server-side.component';
import { FixedColumnsExtensionComponent } from './extensions/fixed-columns-extension.component';

const routes: Routes = [
{
Expand Down Expand Up @@ -129,6 +130,10 @@ const routes: Routes = [
path: 'extensions/colreorder',
component: ColreorderExtensionComponent
},
{
path: 'extensions/fixed-columns',
component: FixedColumnsExtensionComponent
},
{
path: 'extensions/responsive',
component: ResponsiveExtensionComponent
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<ng-template #preview>
<table datatable [dtOptions]="dtOptions" class="row-border hover"></table>
</ng-template>
<app-base-demo [pageTitle]="pageTitle" [mdIntro]="mdIntro" [mdInstall]="mdInstall" [mdHTML]="mdHTML" [mdTS]="mdTS"
[template]="preview">
</app-base-demo>
97 changes: 97 additions & 0 deletions demo/src/app/extensions/fixed-columns-extension.component.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
import { Component, OnInit } from '@angular/core';

@Component({
selector: 'app-fixed-columns-extension',
templateUrl: 'fixed-columns-extension.component.html'
})
export class FixedColumnsExtensionComponent implements OnInit {

pageTitle = 'DataTables Fixed Columns extension';
mdIntro = 'assets/docs/extensions/fixedcolumns/intro.md';
mdInstall = 'assets/docs/extensions/fixedcolumns/installation.md';
mdHTML = 'assets/docs/extensions/fixedcolumns/source-html.md';
mdTS = 'assets/docs/extensions/fixedcolumns/source-ts.md';

// Must be declared as "any", not as "DataTables.Settings"
dtOptions: any = {};

ngOnInit(): void {
this.dtOptions = {
ajax: 'data/data.json',
columns: [{
title: 'ID',
data: 'id'
}, {
title: 'First name',
data: 'firstName'
}, {
title: 'Last name',
data: 'lastName'
},
{
title: 'Last name',
data: 'lastName'
},
{
title: 'Last name',
data: 'lastName'
},
{
title: 'Last name',
data: 'lastName'
},
{
title: 'Last name',
data: 'lastName'
},
{
title: 'Last name',
data: 'lastName'
},
{
title: 'Last name',
data: 'lastName'
},
{
title: 'Last name',
data: 'lastName'
},
{
title: 'Last name',
data: 'lastName'
}, {
title: 'Last name',
data: 'lastName'
},
{
title: 'Last name',
data: 'lastName'
}, {
title: 'Last name',
data: 'lastName'
},
{
title: 'Last name',
data: 'lastName'
}, {
title: 'Last name',
data: 'lastName'
},
{
title: 'Last name',
data: 'lastName'
}, {
title: 'Last name',
data: 'lastName'
}

],
// Make sure that scrollX is set to true for this to work!
scrollX: true,
fixedColumns: {
left: 3,
right: 0
},
};
}
}
33 changes: 33 additions & 0 deletions demo/src/assets/docs/extensions/fixedcolumns/installation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
##### NPM

You need to install its dependencies:

```bash
# JS file
npm install datatables.net-fixedcolumns --save
# CSS file
npm install datatables.net-fixedcolumns-bs4 --save
```

##### angular.json

Add the dependencies in the scripts and styles attributes:

```json
{
"projects": {
"your-app-name": {
"architect": {
"build": {
"options": {
"styles": [
...
"node_modules/datatables.net-fixedcolumns-bs4/css/fixedColumns.bootstrap4.css"
],
"scripts": [
...
"node_modules/datatables.net-fixedcolumns/js/dataTables.fixedColumns.js"
],
...
}
```
3 changes: 3 additions & 0 deletions demo/src/assets/docs/extensions/fixedcolumns/intro.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
You can use the [Fixed Columns Extension](https://datatables.net/extensions/fixedcolumns/) with angular-datatables.<br>
This extension comes handy when you have a large number of columns and want to freeze
certain columns on either side while scrolling along X axis.
3 changes: 3 additions & 0 deletions demo/src/assets/docs/extensions/fixedcolumns/source-html.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
```html
<table datatable [dtOptions]="dtOptions" class="row-border hover"></table>
```
Loading