24.1.4 • Published 4 months ago

bomtable v24.1.4

Weekly downloads
12
License
MIT
Repository
github
Last release
4 months ago

demo

web table like simple excel web таблица - упрощенная версия excel Simple javascript library for working with data, use familiar interface excel Простая javascript библиотека для работы с табличными данным, используя привычный интерфейс excel

  1. How to use | как использовать
  2. Examples | примеры
  3. Options | параметры
  4. Methods | методы
  5. Browser support | поддержка браузерами
  6. License | лицензия

How to use

как использовать

Yarn install

yarn add bomtable
let instance = new BomTable({
    tableClass: 'ex-tbl',
    container: '.example',
    data: [[0, 7, 8, 9], [1, 20, 30], [2, 5], [3], [4, 56, 55, 22, 15, 18], [5, 7, 1], [6]],
    header: ['0', '1', '2', '3', '4', '5', '6'],
});

Examples

renders example

let instance = new BomTable({
    tableClass: 'ex-tbl',
    container: '.example',
    data: [[0, 7, 8, 9], [1, 20, 30], [2, 5], [3], [4, 56, 55, 22, 15, 18], [5, 7, 1], [6]],
    header: ['0', '1', '2', '3', '4', '5', '6'],

    renders: (inst, td, colNum, rowNum, val, cellMeta) => {
        if (colNum === 2) td.style.color = 'tomato'
        if (val === 1) td.style.color = 'green'
    },

});

Options

параметры

let opts = {
    data: [], // data for table body (default empty array) | массив с данными
    header: null, // table header (default null) | массив с заголовками для таблицы
    stickyHeader: true, // sticky table header (default true) | прилипающий заголовок таблицы 
    touchSupport: true, // support touch in browsers (default true) | поддержка касаний в браузерах
    tableClass: '', // css class for table (default empty) | css класс для таблицы
    container: null, // node or selector for mount table (default null) | HTML элемент или селектор для монтирования таблицы
    rowsClass: '', // css class for table rows (default empty string) | css класс для строк
    colsClass: '', // css class for table cols (default empty string) | css класс для столбцов
    useHistory: true, // use state history (default true) | использовать историю состояния
    colsResize: false, // resizable columns (default false) | колонки изменяемого размера

    renders: null, // function for render cells (default null) | функция для рендера ячеек

    // context menu | контекстное меню
    contextMenu: {
        items: {}, // items - object with list item (default {}) | объект со списком элементов меню
        callback: (action, instance, event) => {} // on contextmenu callback function (default null) | функция обратного вызова, срабатывает по клику по пункту меню
    },

    // if headers sets, use this menu like context menu | если заданы заголовки, готовить так же как контекстное меню
    // default empty
    headerMenu: {
        items: {}, // items - object with list item (default {}) | объект со списком элементов меню
        callback: (action, instance, event) => {} // on header menu click function (default null) | функция обратного вызова, срабатывает по клику по пункту меню
    },

    // event hooks 
    hooks: {
        beforeContextMenuRender: (instance, list) => {
            // here you can change the menu list
            list.removeRows = 'remove row'; 
        },
        beforeHeaderMenuRender: (instance, list) => {
            // here you can change the menu list
            list.removeRows = 'remove row'; 
        }
    }
};

Methods

методы

data - (getter) get table data | получить данные из таблицы ({Array})

header - (getter) get table header | получить заголовки таблицы ({Array})

selectedMap - (getter) get selected map | получить карту выделенных элементов ({Array})

selectedData - (getter) get data of selected area | получить данные с выделенной области ({Array})

dataCell(col {number}, row {number}) - (getter) get cell value | получить значение ячейки

selectedRows - (getter) get index of selected rows | получить индексы выделенных строк ({Array})

selectedCols - (getter) get index of selected cols | получить индексы выделенных столбцов ({Array})

dataRow - (getter) get row data by index | получить данные строки по индексу ({Array})
 
dataCol - (getter) get col data by index | получить данные столбца по индексу ({Array})

metaDataCell - (getter) get cell meta data by property name | получить мета данные ячейки по имени свойства ({Any})
data = {Array} - (setter) set new data | установить новые данные

header = {Array} - (setter) set new data header | установить новые заголовки

dataCell = {col: {number}, {row: {number}, val: {*}) - (setter) set new value in cell | установить новое значение ячейки

dataRow - {row: {number(rowIndex)}, data: {Array}} (setter) - set new row values | установить новые значени для строки 
 
dataCol - {col: {number(colIndex)}, data: {Array}} (setter) - set new col values | установить новые значени для столбца

metaDataCell - {col: {number}, row: {number}, propName: {String} val: {Any}} - set any data for cell by property name | установить любые мета данные для ячейки по имени свойства
addRow() - create new row | создать новую строку

addCol() - create new col | создать новый столбец

removeRows({Array}) - remove get rows or selected rows | удалить строки по индексам передающихся входным параметром

removeCols({Array}) - remove get cols or selected cols | удалить столбцы по индексам передающихся входным параметром

unionRows({Array})  - union get rows or selected rows | объеденить строки по индексам

unionCols({Array})  - union get cols or selected cols | объеденить столбцы по индексам

removeHeader() - remove table header | удалить заголовок таблицы
render() - rerender instance data | перерендерить данные

clear() - clear data of instance | очистить instance

destroy() - destroy instance | разрушить instance

Hooks

Хуки

beforeContextMenuRender (instance: {BomTable}, menuList: {Object})

beforeHeaderMenuRender (instance: {BomTable}, menuList: {Object})

Browser support

поддержка браузерами

Chrome 116+, Mozilla Firefox 114+, Touch support

license

лицензия

Standard MIT license

24.1.4

4 months ago

24.1.3

4 months ago

23.9.1

8 months ago

23.9.2

8 months ago

2.4.13

12 months ago

2.4.10

1 year ago

2.4.12

1 year ago

2.4.11

1 year ago

2.4.9

2 years ago

2.4.7

2 years ago

2.4.8

2 years ago

2.4.5

2 years ago

2.4.6

2 years ago

2.4.3

2 years ago

2.4.4

2 years ago

2.4.1

2 years ago

2.4.2

2 years ago

2.4.0

2 years ago

2.3.20

2 years ago

2.3.21

2 years ago

2.3.17

2 years ago

2.3.16

3 years ago

2.3.13

3 years ago

2.3.15

3 years ago

2.3.14

3 years ago

2.3.12

3 years ago

2.3.11

3 years ago

2.3.10

3 years ago

2.3.8

3 years ago

2.3.6

3 years ago

2.3.5

3 years ago

2.3.3

3 years ago

2.1.16

4 years ago

2.1.15

4 years ago

2.1.14

4 years ago

2.1.13

4 years ago

2.1.12

4 years ago

2.1.11

4 years ago

2.1.8

4 years ago

2.1.9

4 years ago

2.1.10

4 years ago

2.1.7

4 years ago

2.1.6

4 years ago

2.1.5

4 years ago

2.1.4

4 years ago

2.1.3

4 years ago

2.1.2

4 years ago

2.1.0

4 years ago

2.0.15

4 years ago

2.0.14

4 years ago

2.0.11

4 years ago

2.0.12

4 years ago

2.0.9

4 years ago

2.0.10

4 years ago

2.0.7

4 years ago

2.0.6

4 years ago

2.0.8

4 years ago

2.0.5

4 years ago

2.0.3

4 years ago

2.0.4

4 years ago

2.0.2

4 years ago

2.0.1

4 years ago

2.0.0

4 years ago

1.1.9

4 years ago

1.1.8

4 years ago

1.1.7

4 years ago

1.1.6

4 years ago

1.1.4

4 years ago

1.1.3

5 years ago

1.1.2

5 years ago

1.1.1

5 years ago

1.1.0

5 years ago

1.0.16

5 years ago

1.0.15

5 years ago

1.0.14

5 years ago

1.0.13

5 years ago

1.0.12

5 years ago

1.0.10

5 years ago

1.0.9

5 years ago

1.0.8

5 years ago