JSFiddle - React, Tailwind, and code Playground
by Janez231
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="pivot-container"></div>
CSS
#fm-pivot-view .fm-grid-view div.fm-cell[hierarchy-r-0="Country"][member-r-0="Canada"] {
background-color: #CCCCCC;
}
#fm-pivot-view .fm-grid-view div.fm-cell[measure="Price"],
#fm-pivot-view .fm-grid-view div.fm-cell.fm-header[measure="Price"] {
background-color: #B2DBBF;
}
JavaScript
let pivot = new Flexmonster({
container: "pivot-container",
componentFolder: "https://cdn.flexmonster.com/",
toolbar: true,
customizeCell: customizeCellFunction,
report: {
dataSource: {
"filename": "data/retail-data.json",
},
options: {
showAggregationLabels: false,
},
slice: {
rows: [{
uniqueName: "Country"
},
{
uniqueName: "City"
},
{
uniqueName: "Product Code"
}],
columns: [{
uniqueName: "[Measures]"
}],
"measures": [{
uniqueName: "Price",
aggregation: "sum"
}, {
uniqueName: "Quantity",
aggregation: "sum"
}, {
uniqueName: "Contact Last Name",
caption: "Unique customers"
}],
"expands": {
"rows": [
{
"tuple": [
"country.[canada]"
]
},
{
"tuple": [
"country.[canada]",
"city.[toronto]"
]
}
]
}
},
}
}
);
function customizeCellFunction(cell, data) {
if (data.type == 'value' && data.isTotal && data.hierarchy && data.hierarchy.uniqueName == 'Contact Last Name') {
cell.text = '';
}
}