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="pivot-container"></div>
CSS
#custom-tab {
margin: 20px 30px !important;
width: 300px;
padding: 5px 10px!important;
}
JavaScript
let pivot = new Flexmonster({
container: "pivot-container",
componentFolder: "https://cdn.flexmonster.com/",
toolbar: true,
report: {
dataSource: {
filename: "data/data.json"
}
},
beforetoolbarcreated: customizeToolbar
});
function customizeToolbar(toolbar) {
let tabs = toolbar.getTabs();
tabs.unshift({
id: "custom-tab"
});
tabs = tabs.filter(tab => tab.id == 'custom-tab' || tab.id == "fm-tab-grid" || tab.id == "fm-tab-charts" || tab.id == "fm-tab-fullscreen" || tab.id == "fm-tab-format" || tab.id == "fm-tab-options" || tab.id == "fm-tab-fields")
toolbar.getTabs = function() {
return tabs;
}
var baseCreateTab = toolbar.createTab;
toolbar.createTab = function(data, parent) {
if (data.id == "custom-tab") {
//your own code for additional tab
var select = document.createElement("select");
select.id = 'custom-tab';
for (let i = 0; i < 3; i++) {
var option = document.createElement("option");
option.value = i;
option.text = "Option" + i;
select.appendChild(option);
}
return select;
}
return baseCreateTab.call(toolbar, data, parent);
}
}