This page covers a non-latest version of Handsontable.
# DataMap
# Description
Utility class that gets and saves data from/to the data source using mapping of columns numbers to object property names.
# Members
# colToPropCache
Source code (opens new window)dataMap.colToPropCache : Array
Cached array of properties to columns.
# dataSource
Source code (opens new window)dataMap.dataSource : *
Reference to the original dataset.
# DESTINATION_CLIPBOARD_GENERATOR
Source code (opens new window)DataMap.DESTINATION_CLIPBOARD_GENERATOR : number
# DESTINATION_RENDERER
Source code (opens new window)DataMap.DESTINATION_RENDERER : number
# duckSchema
Source code (opens new window)dataMap.duckSchema : object
Generated schema based on the first row from the source data.
# propToColCache
Source code (opens new window)dataMap.propToColCache : Map
Cached map of properties to columns.
# Methods
# clear
Source code (opens new window)dataMap.clear()
Clears the data array.
# colToProp
Source code (opens new window)dataMap.colToProp(column) ⇒ string | number
Returns property name that corresponds with the given column index.
Param | Type | Description |
---|---|---|
column | string number | Visual column index or another passed argument. |
Returns: string
| number
- Column property, physical column index or passed argument.
# countCachedColumns
Source code (opens new window)dataMap.countCachedColumns() ⇒ number
Count the number of columns cached in the colToProp
cache.
Returns: number
- Amount of cached columns.
# countFirstRowKeys
Source code (opens new window)dataMap.countFirstRowKeys() ⇒ number
Get the amount of physical columns in the first data row.
Returns: number
- Amount of physical columns in the first data row.
# createCol
Source code (opens new window)dataMap.createCol([index], [amount], [source]) ⇒ number
Creates column at the right of the data array.
Emits: Hooks#event:afterCreateCol
Param | Type | Default | Description |
---|---|---|---|
[index] | number | optional Visual index of the column before which the new column will be inserted. | |
[amount] | number | 1 | optional An amount of columns to add. |
[source] | string | optional Source of method call. |
Returns: number
- Returns number of created columns.
# createMap
Source code (opens new window)dataMap.createMap()
Generates cache for property to and from column addressation.
# createRow
Source code (opens new window)dataMap.createRow([index], [amount], [source]) ⇒ number
Creates row at the bottom of the data array.
Emits: Hooks#event:afterCreateRow
Param | Type | Default | Description |
---|---|---|---|
[index] | number | optional Physical index of the row before which the new row will be inserted. | |
[amount] | number | 1 | optional An amount of rows to add. |
[source] | string | optional Source of method call. |
Returns: number
- Returns number of created rows.
# destroy
Source code (opens new window)dataMap.destroy()
Destroy instance.
# filterData
Source code (opens new window)dataMap.filterData(index, amount, physicalRows)
Filter unwanted data elements from the data source.
Param | Type | Description |
---|---|---|
index | number | Visual index of the element to remove. |
amount | number | Number of rows to add/remove. |
physicalRows | number | Physical row indexes. |
# get
Source code (opens new window)dataMap.get(row, prop) ⇒ *
Returns single value from the data array.
Param | Type | Description |
---|---|---|
row | number | Visual row index. |
prop | number | The column property. |
# getAll
Source code (opens new window)dataMap.getAll() ⇒ Array
Returns the data array.
# getCopyable
Source code (opens new window)dataMap.getCopyable(row, prop) ⇒ string
Returns single value from the data array (intended for clipboard copy to an external application).
Param | Type | Description |
---|---|---|
row | number | Physical row index. |
prop | number | The column property. |
# getCopyableText
Source code (opens new window)dataMap.getCopyableText([start], [end]) ⇒ string
Return data as copyable text (tab separated columns intended for clipboard copy to an external application).
Param | Type | Description |
---|---|---|
[start] | object | optional Start selection position. Visual indexes. |
[end] | object | optional End selection position. Visual indexes. |
# getLength
Source code (opens new window)dataMap.getLength() ⇒ number
Get data length.
# getRange
Source code (opens new window)dataMap.getRange([start], [end], destination) ⇒ Array
Returns data range as array.
Param | Type | Description |
---|---|---|
[start] | object | optional Start selection position. Visual indexes. |
[end] | object | optional End selection position. Visual indexes. |
destination | number | Destination of datamap.get. |
# getSchema
Source code (opens new window)dataMap.getSchema() ⇒ object
Returns data's schema.
# getText
Source code (opens new window)dataMap.getText([start], [end]) ⇒ string
Return data as text (tab separated columns).
Param | Type | Description |
---|---|---|
[start] | object | optional Start selection position. Visual indexes. |
[end] | object | optional End selection position. Visual indexes. |
# propToCol
Source code (opens new window)dataMap.propToCol(prop) ⇒ string | number
Translates property into visual column index.
Param | Type | Description |
---|---|---|
prop | string number | Column property which may be also a physical column index. |
Returns: string
| number
- Visual column index or passed argument.
# recursiveDuckColumns
Source code (opens new window)dataMap.recursiveDuckColumns(schema, lastCol, parent) ⇒ number
Generates columns' translation cache.
Param | Type | Description |
---|---|---|
schema | object | An object to generate schema from. |
lastCol | number | The column index. |
parent | number | The property cache for recursive calls. |
# removeCol
Source code (opens new window)dataMap.removeCol([index], [amount], [source]) ⇒ boolean
Removes column from the data array.
Emits: Hooks#event:beforeRemoveCol
, Hooks#event:afterRemoveCol
Param | Type | Default | Description |
---|---|---|---|
[index] | number | optional Visual index of the column to be removed. If not provided, the last column will be removed. | |
[amount] | number | 1 | optional Amount of the columns to be removed. If not provided, one column will be removed. |
[source] | string | optional Source of method call. |
Returns: boolean
- Returns false
when action was cancelled, otherwise true
.
# removeRow
Source code (opens new window)dataMap.removeRow([index], [amount], [source]) ⇒ boolean
Removes row from the data array.
Emits: Hooks#event:beforeRemoveRow
, Hooks#event:afterRemoveRow
Param | Type | Default | Description |
---|---|---|---|
[index] | number | optional Visual index of the row to be removed. If not provided, the last row will be removed. | |
[amount] | number | 1 | optional Amount of the rows to be removed. If not provided, one row will be removed. |
[source] | string | optional Source of method call. |
Returns: boolean
- Returns false
when action was cancelled, otherwise true
.
# set
Source code (opens new window)dataMap.set(row, prop, value)
Saves single value to the data array.
Param | Type | Description |
---|---|---|
row | number | Visual row index. |
prop | number | The column property. |
value | string | The value to set. |
# spliceCol
Source code (opens new window)dataMap.spliceCol(col, index, amount, [...elements]) ⇒ Array
Add/Removes data from the column.
Param | Type | Description |
---|---|---|
col | number | Physical index of column in which do you want to do splice. |
index | number | Index at which to start changing the array. If negative, will begin that many elements from the end. |
amount | number | An integer indicating the number of old array elements to remove. If amount is 0, no elements are removed. |
[...elements] | Array | optional The new columns to add. |
Returns: Array
- Returns removed portion of columns.
# spliceData
Source code (opens new window)dataMap.spliceData(index, amount, ...elements)
Add/remove row(s) to/from the data source.
Param | Type | Description |
---|---|---|
index | number | Physical index of the element to add/remove. |
amount | number | Number of rows to add/remove. |
...elements | object | Row elements to be added. |
# spliceRow
Source code (opens new window)dataMap.spliceRow(row, index, amount, [...elements]) ⇒ Array
Add/Removes data from the row.
Param | Type | Description |
---|---|---|
row | number | Physical index of row in which do you want to do splice. |
index | number | Index at which to start changing the array. If negative, will begin that many elements from the end. |
amount | number | An integer indicating the number of old array elements to remove. If amount is 0, no elements are removed. |
[...elements] | Array | optional The new rows to add. |
Returns: Array
- Returns removed portion of rows.
# visualColumnsToPhysical
Source code (opens new window)dataMap.visualColumnsToPhysical(index, amount) ⇒ Array
Param | Type | Description |
---|---|---|
index | number | Visual column index. |
amount | number | An amount of rows to translate. |
# visualRowsToPhysical
Source code (opens new window)dataMap.visualRowsToPhysical(index, amount) ⇒ number
This ridiculous piece of code maps rows Id that are present in table data to those displayed for user. The trick is, the physical row id (stored in settings.data) is not necessary the same as the visual (displayed) row id (e.g. When sorting is applied).
Param | Type | Description |
---|---|---|
index | number | Visual row index. |
amount | number | An amount of rows to translate. |