simple, no header
new BomTable({
tableClass: 'ex-tbl',
container: '.example1',
stickyHeader: false,
data:
[
['Kia Rio', 96689, 87662, '+10%'],
['Лада Гранта', 93686, 87726, '+7%'],
['Лада Веста', 77291, 55174, '+40%'],
['Hyundai Solaris', 68614, 90380, '–24%'],
['Hyundai Creta', 55305, 21929, '—'],
],
});
with header, resizable cols
new BomTable({
tableClass: 'ex-tbl',
container: '.example2',
colsResize: true,
stickyHeader: false,
data:
[
['Kia Rio', 96689, 87662, '+10%'],
['Лада Гранта', 93686, 87726, '+7%'],
['Лада Веста', 77291, 55174, '+40%'],
['Лада 4х4', 29091, 27274, '+7%'],
['Toyota Camry', 28199, 28063, '0%'],
['Volkswagen Tiguan', 27666, 10660, '+160%']],
header: ['Модель', '2017 год, шт.', '2016 год, шт.', 'Динамика']
});
with sticky header (+header menu), resizable cols, hook and renders example
new BomTable({
tableClass: 'ex-tbl',
container: '.example3',
colsResize: true,
data:
[
['Kia Rio', 96689, 87662, '+10%'],
['Лада Гранта', 93686, 87726, '+7%'],
['Лада Веста', 77291, 55174, '+40%'],
['Hyundai Solaris', 68614, 90380, '–24%'],
['Hyundai Creta', 55305, 21929, '—'],
['Volkswagen Polo', 48595, 47702, '+2%'],
['Renault Duster', 43828, 44001, '0%'],
['Лада Ларгус', 33601, 29341, '+15%'],
['Лада XRAY', 33319, 19943, '—'],
['Toyota RAV4', 32931, 30603, '+8%'],
['Chevrolet Niva', 31212, 29844, '+5%'],
['Renault Kaptur', 30966, 13926, '—'],
['Renault Logan', 30640, 29565, '+4%'],
['Renault Sandero', 30210, 28557, '+6%'],
['Skoda Rapid', 29445, 25931, '+14%'],
['Лада 4х4', 29091, 27274, '+7%'],
['Toyota Camry', 28199, 28063, '0%'],
['Volkswagen Tiguan', 27666, 106, '+160%']
],
header: ['Модель', '2017 год, шт.', '2016 год, шт.', 'Динамика'],
headerMenu: {
items: {
addRow: 'add row',
addCol: 'add col',
hr: '',
removeRows: 'remove rows',
removeCols: 'remove cols',
hr2: '',
customFn: 'custom function',
},
callback: (action, bomTable) => {
if (action === 'customFn') {
alert('custom function')
return
}
bomTable[action]()
},
},
renders: (instance, el, colNum, rowNum) => {
// is header
if (rowNum < 0) {
return
}
el.style.background = (colNum + rowNum) % 2 === 0 ? '#eaeaea' : '#fff'
},
hooks: {
beforeHeaderMenuRender: (instance, list) => {
delete list.hr
delete list.removeRows
delete list.removeCols
delete list.hr1
delete list.unionCols
delete list.unionRows
},
},
});