1.0.4 • Published 5 years ago

@quanzo/vue-table v1.0.4

Weekly downloads
6
License
MIT
Repository
github
Last release
5 years ago

Table - component for Vue.js

The component allows you to display tabular data. Sort by columns. Select lines. Edit data directly in the table. Block columns or rows from changing.

Demo

Install via NPM

npm i --save-dev @quanzo/vue-table

Load from CDN

You can load specific version of package from jsDelivr CDN.

<script src="https://cdn.jsdelivr.net/npm/@quanzo/vue-table"></script>

Methods provided by the component Table

providereturndescription
registerEventListener(eventName, func)
load(tableData)Upload new data to the table.
getColumnConfig(col)Object
isRow(row)booleanChecks for row presence
isCell(row, col)booleanChecks for cell presence
cell(row, col)mixed
setCell(row, col, value)boolean
rows()integerTotal count rows in table
row(row)array|objectGet row data
setRow(row, value)booleanSet row data. Value is array or object/
insertRow(afterRow, ...value)Insert rows after row. afterRow =-1 then insert at the beginning of the array
deleteRow(row, count = 1)Delete lines starting from this
getCellClasses(row, col)stringGet cell classes
getRowClassesstringGet row classes
setCellClasses(row, col, classes)Set cell classes
setRowClasses(row, classes)Set row classes
getChecked()arrayReturns the status checked of each row in an array. Array index - line number. Value - if checked = true, other = false
checkRow(row, status = null)booleanGet or set selection mark. If status == true/false - set or reset mark
blockRowbooleanSet or reset row lock. If the line is locked, then its editing is prohibited. If status == true/false - set or reset block

Events

event\$emitevent paramsdescription
event-end-edit-cellyes{row: ..., col: ..., initial: ..., result: ..., data: ...}The event will be triggered after editing the cell.
event-sort-tableyes{col: ..., direct: "asc|desc"}, ... {col: ..., direct: "asc|desc"} The event will be triggered after sorting.
event-checkedyes{current: []}The event will be triggered after checked row.

Options

paramtypedefaultsampledescription
dataarray[]Data to display in the table. Array of strings. A string can be an array or a data object.
columnsarrayfalse”ID”, “Name”, “Family”Data on the columns of the table. If an array, then these are the column headers. If the object is advanced settings. If not, column headers will not be displayed.
columnsobjectfalse{ID: {name:”Identify”, enableEdit: false, enableSort: false, type:”number”}, town: {name:”Company town”, enableEdit: true, enableSort: true, type: “select”, options: {msk: “Moscow”, spb: “Snakt-Petersburg”}}}Данные по колонкам таблицы. Если массив, то это заголовки колонок. Если объект - то это расширенные настройки. Если нет - заголовоки колонок выведены не будут.
useUndobooleantrueActivate ctrl+z
defEnableEditbooleantrueDefault value enableEdit param for column
enableEditbooleantrueEnable/disable edit all cell
defEnableSortbooleantrueDefault value enableSort param for column
enableSortbooleantrueEnable/disable all row in table
enableCheckedbooleantrueWhether or not line marking is available.
sortarray[]{col:”name”, direct:”asc”}, {col:”id”, direct:”desc”}
checkedRowsarray[]false, trueChecked row number 1.
blockedRowsarray[]false, false, trueBlock row number 2
cellClassesarray[]
rowClassesarray[]”marked checked”, ”not-marked”, “”, “”

Available types of columns

type = string

...
name: {
    name:”User name”,
    enableEdit: false,
    enableSort: false,
    type:”string”, // or do not set the parameter
    default: "" // or not set
}
...

type = number

...
id: {
    name:”Identify”,
    enableEdit: false,
    enableSort: false,
    type:”number”,
    default: 0 // or not set
}
...

type = select

...
town: {
    name:”Company town”,
    enableEdit: true,
    enableSort: true,
    type: “select”,
    options: {
        msk: “Moscow”,
        spb: “Sankt-Petersburg”
    },
    default: "spb"
}
...

type = image

edit as string, view as image

1.0.4

5 years ago

1.0.3

5 years ago

1.0.2

5 years ago

1.0.1

5 years ago

1.0.0

5 years ago