JSFiddle - React, Tailwind, and code Playground
by Flexmonster Pivot Table
HTML
<link rel="stylesheet" href="https://s3.amazonaws.com/flexmonster/2.3/demo.css">
<script src="https://cdn.flexmonster.com/flexmonster.js"></script>
<div id="pivotContainer"></div>
JavaScript
var pivot = new Flexmonster({
container: "pivotContainer",
componentFolder: "https://cdn.flexmonster.com/",
toolbar: true,
report: {
"dataSource": {
"data": getData()
},
"slice": {
"rows": [{
"uniqueName": "Member"
}],
"columns": [{
"uniqueName": "[Measures]"
}],
"measures": [{
"uniqueName": "Value",
"aggregation": "sum"
}]
}
}
});
let sortOrder = ["B", "C", "A", "D"];
flexmonster.sortingMethod("Member", function(a, b) {
console.log(sortOrder.indexOf(a));
return sortOrder.indexOf(a) > sortOrder.indexOf(b) ? 1 : -1;
});
function getData() {
return [{
"Value": -93,
"Member": "A"
},
{
"Value": 3,
"Member": "D"
},
{
"Value": -20,
"Member": "B"
},
{
"Value": 36,
"Member": "B"
},
{
"Value": 150,
"Member": "A"
},
{
"Value": -50,
"Member": "D"
},
{
"Value": -75,
"Member": "D"
},
{
"Value": -44,
"Member": "A"
},
{
"Value": -57,
"Member": "C"
},
{
"Value": 69,
"Member": "B"
},
{
"Value": 91,
"Member": "C"
},
{
"Value": 45,
"Member": "C"
},
{
"Value": -88,
"Member": "B"
},
{
"Value": 77,
"Member": "A"
},
{
"Value": 21,
"Member": "D"
}
]
}