JSFiddle - React, Tailwind, and code Playground
Slice configuration
by Flexmonster Pivot Table
HTML
<script src="https://cdn.flexmonster.com/flexmonster.js"></script>
<button onclick="getFilteredFields()">Get filtered fields</button>
<div id="pivot-container">The component will appear here</div>
<div class="output" id="output">Output will appear here</div>
CSS
@import url(https://cdn.flexmonster.com/assets/jsfiddle-styles.css);
JavaScript
let pivot = new Flexmonster({
container: 'pivot-container',
componentFolder: 'https://cdn.flexmonster.com/',
width: '100%',
height: 300,
report: {
dataSource: {
filename: 'data/data.csv',
},
slice: {
reportFilters: [
{
uniqueName: 'Country',
filter: {
exclude: ['country.[australia]'],
},
},
{
uniqueName: 'Business Type',
filter: {
members: ['business type.[specialty bike shop]'],
},
},
{
uniqueName: 'Discount',
},
],
rows: [
{
uniqueName: 'Category',
filter: {
exclude: ['category.[bikes]', 'category.[cars]'],
},
},
{ uniqueName: 'Destination' },
],
columns: [{ uniqueName: 'Color' }, { uniqueName: '[Measures]' }],
measures: [{ uniqueName: 'Price' }],
},
},
});
function getFilteredFields() {
const reportFilters = pivot.getReport().slice.reportFilters;
const filteredReportFilters = reportFilters.filter(el => el.filter);
showOutput(JSON.stringify(filteredReportFilters, null, 4));
}
function showOutput(content) {
document.getElementById('output').innerText = content;
}