Angular Common - Utils - excelExporter
exportDataGrid(options)
This method requires ExcelJS v4.4.0+ to export data and FileSaver v2.0.2+ to save files. If you apply CSP rules, refer to the ExcelJS CSP Treats section to read more about potential vulnerabilities.
You can call this method at any point in your application. In the example below, this method is called in the onExporting function that is executed before data is exported. As a result, the DataGrid is exported to a single worksheet.
- <dx-data-grid ...
- (onExporting)="onExporting($event)">
- <dxo-export [enabled]="true"></dxo-export>
- </dx-data-grid>
- import { Component } from '@angular/core';
- import { exportDataGrid } from 'devextreme/excel_exporter';
- import { Workbook } from 'exceljs';
- import saveAs from 'file-saver';
- @Component({
- selector: 'app-root',
- templateUrl: './app.component.html',
- styleUrls: ['./app.component.css']
- })
- export class AppComponent {
- onExporting(e) {
- const workbook = new Workbook();
- const worksheet = workbook.addWorksheet('Main sheet');
- exportDataGrid({
- component: e.component,
- worksheet: worksheet
- }).then(function() {
- workbook.xlsx.writeBuffer()
- .then(function(buffer: BlobPart) {
- saveAs(new Blob([buffer], { type: 'application/octet-stream' }), 'DataGrid.xlsx');
- });
- });
- }
- }
- import { BrowserModule } from '@angular/platform-browser';
- import { NgModule } from '@angular/core';
- import { AppComponent } from './app.component';
- import { DxDataGridModule } from 'devextreme-angular';
- @NgModule({
- declarations: [
- AppComponent
- ],
- imports: [
- BrowserModule,
- DxDataGridModule
- ],
- providers: [ ],
- bootstrap: [AppComponent]
- })
- export class AppModule { }
See Also
exportPivotGrid(options)
This method requires ExcelJS v4.4.0+ to export data and FileSaver v2.0.2+ to save files. If you apply CSP rules, refer to the ExcelJS CSP Treats section to read more about potential vulnerabilities.
You can call this method at any point in your application. In the example below, this method is called in the onExporting function that is executed before data is exported. The cancel parameter is enabled to prevent the built-in export. As a result, the PivotGrid is exported to a single worksheet.
- <dx-pivot-grid ...
- (onExporting)="onExporting($event)">
- <dxo-export [enabled]="true"></dxo-export>
- </dx-pivot-grid>
- import { Component } from '@angular/core';
- import { exportPivotGrid } from 'devextreme/excel_exporter';
- import { Workbook } from 'exceljs';
- import saveAs from 'file-saver';
- @Component({
- selector: 'app-root',
- templateUrl: './app.component.html',
- styleUrls: ['./app.component.css']
- })
- export class AppComponent {
- onExporting(e) {
- const workbook = new Workbook();
- const worksheet = workbook.addWorksheet('Main sheet');
- exportPivotGrid({
- component: e.component,
- worksheet: worksheet
- }).then(function() {
- workbook.xlsx.writeBuffer()
- .then(function(buffer: BlobPart) {
- saveAs(new Blob([buffer], { type: 'application/octet-stream' }), 'PivotGrid.xlsx');
- });
- });
- }
- }
- import { BrowserModule } from '@angular/platform-browser';
- import { NgModule } from '@angular/core';
- import { AppComponent } from './app.component';
- import { DxPivotGridModule } from 'devextreme-angular';
- @NgModule({
- declarations: [
- AppComponent
- ],
- imports: [
- BrowserModule,
- DxPivotGridModule
- ],
- providers: [ ],
- bootstrap: [AppComponent]
- })
- export class AppModule { }
See Also
If you have technical questions, please create a support ticket in the DevExpress Support Center.