1. API reference
  2. Welcome
    1. Component overview
    2. Quickstart
    3. System requirements
    4. Troubleshooting
    5. Managing license keys
  3. Connecting to Data Source
    1. JSON
      1. Connecting to JSON
      2. Data types in JSON
    2. CSV
      1. Connecting to CSV
      2. Connecting to CSV using Compressor
      3. Data types in CSV
    3. Database
      1. Connecting to SQL databases
      2. Connecting to other databases
      3. Connecting to database with Node.js
      4. Connecting to database with .NET
      5. Connecting to database with .NET Core
      6. Connecting to database with Java
      7. Connecting to database with PHP
    4. Microsoft Analysis Services
      1. Connecting to Microsoft Analysis Services
      2. Getting started with Accelerator
      3. Installing Accelerator as a Windows Service
      4. Referring Accelerator as a DLL
      5. Configuring authentication process
      6. Configuring secure HTTPS connection
      7. Troubleshooting
    5. Pentaho Mondrian
      1. Connecting to Pentaho Mondrian
      2. Getting started with Accelerator
      3. Configuring Mondrian roles
      4. Сonfiguring username/password protection
      5. Сonfiguring secure HTTPS connection
      6. Troubleshooting
    6. icCube
  4. Configuring report
    1. What is a report
    2. Data source
    3. Slice
    4. Options
    5. Number formatting
    6. Conditional formatting
    7. Set report to the component
    8. Get report from the component
    9. Date and time formatting
    10. Configuring global options
    11. Export and print
    12. Calculated values
    13. Custom sorting
  5. Integration with frameworks
    1. Available tutorials
    2. Integration with AngularJS (v1.x)
    3. Integration with Angular
    4. Integration with React
    5. Integration with Webpack
    6. Integration with ASP.NET
    7. Integration with jQuery
    8. Integration with JSP
    9. Integration with TypeScript
    10. Integration with RequireJS
    11. Integration with PhoneGap
  6. Integration with charts
    1. Integration with Highcharts
    2. Integration with Google Charts
    3. Integration with FusionCharts
    4. Integration with any charting library
  7. Customizing
    1. Customizing toolbar
    2. Customizing appearance
    3. Customizing context menu
    4. Localizing component
  8. Updating to the latest version
    1. Updating to the latest version
    2. Release notes
    3. Migration guide from 2.5 to 2.6
    4. Migration guide from 2.4 to 2.5
    5. Migration guide from 2.3 to 2.4
    6. Migration guide from 2.2 to 2.3
  9. Older Versions
    1. Documentation 2.3
    2. Documentation 2.2
    3. API reference - Flex
Table of contents

Integration with Webpack

This tutorial will help you to integrate Pivot Table Component with Webpack. Follow the steps to set up a simple Webpack project using Flexmonster Pivot Table:

Prerequisites

To run a simple application you will need Node.js and npm. Get it now if it’s not already installed on your machine.

Open terminal/console window and verify that you are running at least node v4.x.x and npm 3.x.x by running node -v and npm -v.

Step 1: Create a new project based on this sample

Download .zip archive with the sample or clone it from GitHub within the following command:

git clone https://github.com/flexmonster/pivot-webpack my-proj
cd my-proj

Step 2: Install npm packages

Install the npm packages described in the package.json:

npm install

Step 3: Run sample project

Open index.js and replace XXXX-XXXX-XXXX-XXXX-XXXX with an actual license key. If you don’t have a license key, get it here.

Run in the console:

npm start

After that, the working sample will be available if you open http://localhost:8080/ in your browser.

Project structure

Let us take a closer look at the folder structure of this application:

  • dist/
    • index.html – here we add <div> container for Flexmonster.
  • src/
    • index.js – here we embed our pivot table.
  • package.json – description of the npm packages.
  • webpack.config.js – Webpack configuration file with standard CSS and fonts loading.

Please have a look at the content of the key files:

index.js

// ES2015 
import 'flexmonster/flexmonster.min.css';
import Flexmonster from 'flexmonster';

// CommonJS 
// require('flexmonster/flexmonster.min.css');
// const Flexmonster = require('flexmonster');

new Flexmonster({
    container: "#pivot",
    // Please replace XXXX-XXXX-XXXX-XXXX-XXXX with your own key
    licenseKey: "XXXX-XXXX-XXXX-XXXX-XXXX",
    toolbar: true
})

webpack.config.js

const path = require('path');

module.exports = {
    mode: 'development',
    entry: {
        app: './src/index.js',
    },
    devServer: {
        contentBase: './dist'
    },
    output: {
        filename: 'bundle.js',
        path: path.resolve(__dirname, 'dist')
    },
    module: {
        rules: [
            {
                test: /\.css$/,
                use: [
                    'style-loader',
                    'css-loader'
                ]
            },
            {
                test: /\.(woff|woff2|eot|ttf|otf|svg)$/,
                use: [
                    'file-loader'
                ]
            }
        ]
    }
};

index.html

<!DOCTYPE html>
<html>
<head>
  <title>Flexmonster / Webpack</title>
</head>
<body>
  <div id="pivot"></div>
  <script src="bundle.js"></script>
</body>
</html>