JSFiddle - React, Tailwind, and code Playground
HTML
<script src="https://cdnjs.cloudflare.com/ajax/libs/tabulator/4.9.3/js/tabulator.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/tabulator/4.9.3/css/bootstrap/tabulator_bootstrap4.min.css">
<div id="example-table"></div>
CSS
.tabulator {
font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji;
font-size: 0.875em;
}
JavaScript
var updateSum = (cell) => {
var data = cell.getData();
var sum = Number(data.a) + Number(data.b)
var row = cell.getRow();
row.update({
"ab": sum
});
}
var table = new Tabulator("#example-table", {
height: '100%',
layout: "fitColumns",
columns: [{
title: "Name",
field: "name"
},
{
title: "a",
field: "a",
editor: "input",
cellEdited: updateSum
},
{
title: "b",
field: "b",
editor: "input",
cellEdited: updateSum
},
{
title: "a+b",
field: "ab",
mutator: (value, data, type, params, component) => {
return Number(data.a) + Number(data.b)
}
}
]
});
var tabledata = [{
id: 1,
name: "Oli Bob",
a: 12,
b: 1
},
{
id: 2,
name: "Mary May",
a: 1,
b: 1
},
{
id: 3,
name: "Christine Lobowski",
a: 42,
b: 1
},
{
id: 4,
name: "Brendon Philips",
a: 125,
b: 1
},
{
id: 5,
name: "Margret Marmajuke",
a: 16,
b: 1
}
];
table.setData(tabledata);