This widget provides an interactive tabular view of each feature's attributes in a feature layer. In addition, it also works with standalone tables that are not associated with underlying geometries. When working with a large dataset, the table loads additional features as the user scrolls.
Known Limitations
- Number and date formatting is not yet supported but will be added in a future release.
- Viewing related records is currently not supported.
- Viewing attachments is currently not supported, although if a feature contains attachments, the total count per feature will display.
- SceneLayers are only supported if they have an associated FeatureLayer.
The following image displays the standalone FeatureTable
widget
without any associated map.
The following image displays the FeatureTable
widget with an associated map.
- See also:
Constructors
-
new FeatureTable(properties)
-
Parameter:properties Objectoptional
See the properties for a list of all the properties that may be passed into the constructor.
Example:// Typical usage for FeatureTable widget. This will recognize all fields in the layer if none are set. const featureTable = new FeatureTable({ view: view, // The view property must be set for the select/highlight to work layer: featureLayer, container: "tableDiv" });
Property Overview
Name | Type | Summary | Class | |
---|---|---|---|---|
Boolean | more details Indicates whether to display the | more details | FeatureTable | |
Boolean | more details Automatically refreshes the table when its associated layer has been updated. | more details | FeatureTable | |
Boolean | more details When | more details | FeatureTable | |
Collection<(FieldColumn|GroupColumn)> | more details A read-only collection of field columns and/or grouped field columns within the table. | more details | FeatureTable | |
String|HTMLElement | more details The ID or node representing the DOM element containing the widget. | more details | Widget | |
String | more details The name of the class. | more details | Accessor | |
Boolean | more details Indicates whether editing is enabled on the data within the feature table. | more details | FeatureTable | |
FieldColumnConfig[] | more details An array of individual field configuration objects. | more details | FeatureTable | |
Geometry | more details Set this property to filter the features displayed in the table. | more details | FeatureTable | |
Collection<string> | more details A collection of string field.names that are to remain hidden within the table. | more details | FeatureTable | |
Boolean | more details Indicates whether to highlight the associated feature when a row is selected. | more details | FeatureTable | |
String | more details The unique ID assigned to the widget when the widget is created. | more details | Widget | |
String | more details The widget's default label. | more details | FeatureTable | |
FeatureLayer|SceneLayer|GeoJSONLayer|CSVLayer|WFSLayer|ImageryLayer | more details The associated FeatureLayer, SceneLayer, GeoJSONLayer, CSVLayer, ImageryLayer, or WFSLayer containing the fields and attributes to display within the widget. | more details | FeatureTable | |
ButtonMenu | more details Reference to the FeatureTable's menu. | more details | FeatureTable | |
ButtonMenuConfig | more details Set this object to customize the feature table's menu content. | more details | FeatureTable | |
Boolean | more details Indicates whether sorting multiple columns is supported within the table. | more details | FeatureTable | |
Number | more details The default page size used when displaying features within the table. | more details | FeatureTable | |
String | more details The state of the widget. | more details | FeatureTable | |
TableTemplate | more details The associated template used for the feature table. | more details | FeatureTable | |
MapView|SceneView | more details | more details | FeatureTable | |
FeatureTableViewModel | more details The view model for this widget. | more details | FeatureTable | |
Boolean | more details Indicates whether the widget is visible. | more details | Widget | |
VisibleElements | more details The visible elements that are displayed within the widget. | more details | FeatureTable |
Property Details
-
attachmentsEnabled Boolean
-
Indicates whether to display the
Attachments
field in the table. This is only applicable if the feature layer supports attachments. Currently, this field only displays the count of attachments per feature.- Default Value:false
-
autoRefreshEnabled BooleanSince: ArcGIS API for JavaScript 4.23
-
Automatically refreshes the table when its associated layer has been updated.
- Default Value:true
-
columnReorderingEnabled BooleanSince: ArcGIS API for JavaScript 4.16
-
When
true
, columns can be reordered by dragging a column's header.- Default Value:true
-
-
A read-only collection of field columns and/or grouped field columns within the table.
By default fields such as
CreationDate
,Creator
,EditDate
,Editor
, andGlobalID
do not show. If these fields are needed, set them via TableTemplate.columnTemplates. In this case, it is also required that the column template'svisible
property is set totrue
.- See also:
-
-
The ID or node representing the DOM element containing the widget. This property can only be set once. The following examples are all valid use cases when working with widgets.
Examples:// Create the HTML div element programmatically at runtime and set to the widget's container const basemapGallery = new BasemapGallery({ view: view, container: document.createElement("div") }); // Add the widget to the top-right corner of the view view.ui.add(basemapGallery, { position: "top-right" });
// Specify an already-defined HTML div element in the widget's container const basemapGallery = new BasemapGallery({ view: view, container: basemapGalleryDiv }); // Add the widget to the top-right corner of the view view.ui.add(basemapGallery, { position: "top-right" }); // HTML markup <body> <div id="viewDiv"></div> <div id="basemapGalleryDiv"></div> </body>
// Specify the widget while adding to the view's UI const basemapGallery = new BasemapGallery({ view: view }); // Add the widget to the top-right corner of the view view.ui.add(basemapGallery, { position: "top-right" });
-
The name of the class. The declared class name is formatted as
esri.folder.className
.
-
editingEnabled BooleanSince: ArcGIS API for JavaScript 4.16
-
Indicates whether editing is enabled on the data within the feature table. Double-clicking in a cell will enable editing for that value.
Editing permissions can be broken down with the following levels of priority:
- Field - This is derived
from the FeatureLayer. It takes what is set in the Field.editable property. This
must always be
true
for editing to be enabled. This can be overridden using a field column template. - Template - The editable permissions on a field can be configured by setting the editable property of the FieldColumnTemplate.
- FeatureTable - The editingEnabled property must be set on the table in order for any type of editing to be enabled.
For example, if table editing is disabled on the widget, i.e.
enableEditing
is not set, it is still possible to enable editing for a specific column by setting the FieldColumnTemplate.editable property. Vice versa is also true, i.e. if table editing is enabled, a field configuration can be used to disable editing for a specific column.Ultimately, if the service's field is not editable, it is not possible to override its permissions using any of the options above.
- Default Value:false
- See also:
- Field - This is derived
from the FeatureLayer. It takes what is set in the Field.editable property. This
must always be
-
fieldConfigs FieldColumnConfig[]autocastDeprecated since version 4.24. Use FieldColumnTemplate via the FeatureTable's tableTemplate.
-
An array of individual field configuration objects. This is where you can specify what fields to display and how you wish to display them.
When not set, all fields except for
CreationDate
,Creator
,EditDate
,Editor
, andGlobalID
will be included. Otherwise, it is up to the developer to set the right field(s) to override and display.- Default Value:All fields except for `CreationDate`, `Creator`, `EditDate`, `Editor`, and `GlobalID`
-
Since: ArcGIS API for JavaScript 4.19
-
Set this property to filter the features displayed in the table. It accepts a Geometry, e.g. Extent, and uses it as a spatial filter. When modifying this property, the FeatureTable will completely refresh and re-query for all features.
- See also:
Example:// Filter the table to only display the associated feature(s) that fall within the filterGeometry's geometry, (e.g. Extent) featureLayer.watch("loaded", () => { reactiveUtils.when(() => view.updating === false, () => { // Get the new extent of view/map whenever map is updated if (view.extent) { // Filter and show only the visible features in the feature table featureTable.filterGeometry = view.extent; } }); });
-
Since: ArcGIS API for JavaScript 4.16
-
A collection of string field.names that are to remain hidden within the table. By default fields such as
CreationDate
,Creator
,EditDate
,Editor
, andGlobalID
do not show. If these fields are needed, set them via TableTemplate.columnTemplates. In this case, it is also required that the column template's visible property is set totrue
.- Default Value:true
- See also:
Examples:const featureTable = new FeatureTable({ layer: featureLayer, view: view, hiddenFields: ["Primary_Type", "incident_date"], // will not show these two fields within the table container: document.getElementById("tableDiv") });
// Set this syntax if needing to display a default hidden field, e.g. 'CreationDate` const featureTable = new FeatureTable({ layer: featureLayer, view: view, tableTemplate: { // autocastable to TableTemplate customElements: [ // takes an array of FieldColumnTemplate and GroupColumnTemplate { //autocastable to FieldColumnTemplate type: "field", fieldName: "CreationDate", label: "Date created", visible: true }] } container: document.getElementById("tableDiv") });
-
highlightOnRowSelectEnabled BooleanSince: ArcGIS API for JavaScript 4.16
-
Indicates whether to highlight the associated feature when a row is selected.
- Default Value:true
-
The unique ID assigned to the widget when the widget is created. If not set by the developer, it will default to the container ID, or if that is not present then it will be automatically generated.
-
label String
-
The widget's default label.
-
The associated FeatureLayer, SceneLayer, GeoJSONLayer, CSVLayer, ImageryLayer, or WFSLayer containing the fields and attributes to display within the widget. The table's pagination defaults to
50
records at a time. If the layer contains less than 50 records, it will use whatever count it has. Note that 0 records do not apply.- Support for GeoJSONLayer, CSVLayer, ImageryLayer, and WFSLayer was added at version 4.21.
- For an ImageryLayer to work with FeatureTable, it must have a mosaic dataset. Currently,
Map
andFeatureTable
interaction withImageryLayers
are not supported.
- See also:
-
Since: ArcGIS API for JavaScript 4.19
-
Reference to the FeatureTable's menu.
The menu's items are regenerated when a column's visibility changes. Use the FeatureTable's menuConfig and menuConfig.items to customize menu items. These options are recommended, rather than updating The table's
items
directly off of itsmenu
. This helps ensure the menu always shows the correct items.- See also:
-
Since: ArcGIS API for JavaScript 4.16
-
Set this object to customize the feature table's menu content.
-
multiSortEnabled BooleanSince: ArcGIS API for JavaScript 4.23
-
Indicates whether sorting multiple columns is supported within the table. Use this in combination with the FieldColumnTemplate.initialSortPriority and FieldColumnTemplate.direction properties to set sorting functionality for multiple columns.
- Default Value:false
- See also:
Example:const featureTableVM = new FeatureTableViewModel({ layer: featureLayer, multiSortEnabled: true, tableTemplate: { // autocasts to TableTemplate columnTemplates: [ // takes an array of FieldColumnTemplate and GroupColumnTemplate { // autocasts to FieldColumnTemplate type: "field", fieldName: "ObjectId", direction: "asc", // In order to use initialSortPriority, make sure direction is set initialSortPriority: 1, // This field's sort order takes second-highest priority. }, { type: "field", fieldName: "Name", direction: "asc", // In order to use initialSortPriority, make sure direction is set initialSortPriority: 0, // This field's sort order takes the highest priority. }, { type: "field", fieldName: "Status", direction: "asc", // In order to use initialSortPriority, make sure direction is set initialSortPriority: 2 // This field's sort order is prioritized after Name and ObjectId, respectively. }] }, container: "tableDiv" });
-
pageSize NumberSince: ArcGIS API for JavaScript 4.19
-
The default page size used when displaying features within the table. By default, the page loads the first 50 features returned by the service.
It is not possible to overwrite the maximum page size on the server, ie.
maxRecordCount
, as this property only applies to set values less than the maximum page size, i.e.maxRecordCount
, set on the service.- Default Value:50
- See also:
-
state String
-
The state of the widget.
Possible Values:"disabled"|"loading"|"ready"
- Default Value:disabled
-
tableTemplate TableTemplateSince: ArcGIS API for JavaScript 4.24
-
The associated template used for the feature table.
The tableTemplate is where you configure how the feature table should display and set any associated properties for the table and its columns.
Example:const tableTemplate = new TableTemplate({ columnTemplates: [ // takes an array of FieldColumnTemplate and GroupColumnTemplate { // autocasts to FieldColumnTemplate type: "field", fieldName: "ObjectId", direction: "asc", // In order to use initialSortPriority, make sure direction is set initialSortPriority: 1 // This field's sort order takes the second-highest priority. }, { type: "field", fieldName: "NAME", label: "Name", direction: "asc", // In order to use initialSortPriority, make sure direction is set initialSortPriority: 0 // This field's sort order takes the highest priority }, { type: "field", fieldName: "STATUS", label: "Status", direction: "asc", // In order to use initialSortPriority, make sure direction is set initialSortPriority: 2 // This field's sort order is prioritized after Name and ObjectId, respectively. }] });
-
A reference to the MapView or SceneView. This property must be set for select/highlighting in the map to work.
-
viewModel FeatureTableViewModelautocast
-
The view model for this widget. This is a class that contains all the logic, (ie. properties and methods), that controls the widget's behavior. See the FeatureTableViewModel class to access all properties and methods on the widget.
-
Indicates whether the widget is visible.
If
false
, the widget will no longer be rendered in the web document. This may affect the layout of other elements or widgets in the document. For example, if this widget is the first of three widgets associated to the upper right hand corner of the view UI, then the other widgets will reposition when this widget is made invisible. For more information, refer to the CSS display value of"none"
.- Default Value:true
Example:// Hides the widget in the view widget.visible = false;
-
visibleElements VisibleElementsautocast
-
The visible elements that are displayed within the widget. This property provides the ability to turn individual elements of the widget's display on/off.
Example:// Default values are displayed below featureTable.visibleElements = { header: true, menu: true, menuItems: { clearSelection: true, refreshData: true, toggleColumns: true, selectedRecordsShowAllToggle: true, selectedRecordsShowSelectedToggle: true, zoomToSelection: true }, selectionColumn: true, columnMenus: true }
Method Overview
Name | Return Type | Summary | Class | |
---|---|---|---|---|
String | more details A utility method used for building the value for a widget's | more details | Widget | |
more details This clears any highlighted features. | more details | FeatureTable | ||
more details Clears the current selection within the table. | more details | FeatureTable | ||
more details Clears the current selection filter within the table. | more details | FeatureTable | ||
more details Unselects the specified rows within the table. | more details | FeatureTable | ||
more details Destroys the widget instance. | more details | Widget | ||
Boolean | more details Emits an event on the instance. | more details | Widget | |
more details Filters the table by the current selection. | more details | FeatureTable | ||
Column|GroupColumn | more details Finds the specified column within the feature table. | more details | FeatureTable | |
Boolean | more details Indicates whether there is an event listener on the instance that matches the provided event name. | more details | Widget | |
more details Hides the specified column from the feature table. | more details | FeatureTable | ||
Boolean | more details
| more details | Widget | |
Boolean | more details
| more details | Widget | |
Boolean | more details
| more details | Widget | |
Object | more details Registers an event handler on the instance. | more details | Widget | |
more details Adds one or more handles which are to be tied to the lifecycle of the object. | more details | Accessor | ||
more details This method is primarily used by developers when implementing custom widgets. | more details | Widget | ||
more details Refreshes the table contents while maintaining the current scroll position. | more details | FeatureTable | ||
Object | more details This method is primarily used by developers when implementing custom widgets. | more details | Widget | |
more details Renders widget to the DOM immediately. | more details | Widget | ||
more details This method is primarily used by developers when implementing custom widgets. | more details | Widget | ||
more details Scrolls the table to a row based on a specified index. | more details | FeatureTable | ||
more details Selects the specified rows within the table. | more details | FeatureTable | ||
more details Shows all of the columns in the table. | more details | FeatureTable | ||
more details Shows the specified column within the feature table. | more details | FeatureTable | ||
more details Sorts the column in either ascending ("asc") or descending ("desc") order. | more details | FeatureTable | ||
Promise | more details
| more details | Widget | |
more details Zooms the view to the extent of the current row selection. | more details | FeatureTable |
Method Details
-
A utility method used for building the value for a widget's
class
property. This aids in simplifying CSS class setup.Parameter:repeatable The class names.
Returns:Type Description String The computed class name. - See also:
Example:// .tsx syntax showing how to set CSS classes while rendering the widget render() { const dynamicIconClasses = { [CSS.myIcon]: this.showIcon, [CSS.greyIcon]: !this.showIcon }; return ( <div class={classes(CSS.root, CSS.mixin, dynamicIconClasses)} /> ); }
-
clearHighlights()Since: ArcGIS API for JavaScript 4.16
-
This clears any highlighted features. Take note that the associated rows are not deselected.
-
clearSelection()Since: ArcGIS API for JavaScript 4.16
-
Clears the current selection within the table.
-
clearSelectionFilter()Since: ArcGIS API for JavaScript 4.23
-
Clears the current selection filter within the table.
-
deselectRows(params)Since: ArcGIS API for JavaScript 4.16
-
Unselects the specified rows within the table.
Parameter:The selection parameters to deselect within the feature table.
-
destroy()inherited
-
Destroys the widget instance.
-
Emits an event on the instance. This method should only be used when creating subclasses of this class.
Parameters:type StringThe name of the event.
event ObjectoptionalThe event payload.
Returns:Type Description Boolean true
if a listener was notified
-
filterBySelection()Since: ArcGIS API for JavaScript 4.16
-
Filters the table by the current selection.
-
findColumn(fieldName){Column|GroupColumn}Since: ArcGIS API for JavaScript 4.16
-
Finds the specified column within the feature table.
Parameter:fieldName StringThe
fieldName
of the column to find.Returns:Type Description Column | GroupColumn The returned column.
-
Indicates whether there is an event listener on the instance that matches the provided event name.
Parameter:type StringThe name of the event.
Returns:Type Description Boolean Returns true if the class supports the input event.
-
hideColumn(fieldName)Since: ArcGIS API for JavaScript 4.16
-
Hides the specified column from the feature table.
Parameter:fieldName StringThe
fieldName
of the column to hide.
-
Since: ArcGIS API for JavaScript 4.19
-
isFulfilled()
may be used to verify if creating an instance of the class is fulfilled (either resolved or rejected). If it is fulfilled,true
will be returned.Returns:Type Description Boolean Indicates whether creating an instance of the class has been fulfilled (either resolved or rejected).
-
Since: ArcGIS API for JavaScript 4.19
-
isRejected()
may be used to verify if creating an instance of the class is rejected. If it is rejected,true
will be returned.Returns:Type Description Boolean Indicates whether creating an instance of the class has been rejected.
-
Since: ArcGIS API for JavaScript 4.19
-
isResolved()
may be used to verify if creating an instance of the class is resolved. If it is resolved,true
will be returned.Returns:Type Description Boolean Indicates whether creating an instance of the class has been resolved.
-
Registers an event handler on the instance. Call this method to hook an event with a listener.
Parameters:An event or an array of events to listen for.
listener FunctionThe function to call when the event fires.
Returns:Type Description Object Returns an event handler with a remove()
method that should be called to stop listening for the event(s).Property Type Description remove Function When called, removes the listener from the event. Example:view.on("click", function(event){ // event is the event handle returned after the event fires. console.log(event.mapPoint); });
-
own(handleOrHandles)inheritedSince: ArcGIS API for JavaScript 4.24
-
Adds one or more handles which are to be tied to the lifecycle of the object. The handles will be removed when the object is destroyed.
// Manually manage handles const handle = reactiveUtils.whenOnce(() => !view.updating) .then(() => { wkidSelect.disabled = false; }); handle.remove(); // Assign a handle using own() this.own(reactiveUtils.whenOnce(() => !view.updating) .then(() => { wkidSelect.disabled = false; }));
Parameter:handleOrHandles WatchHandle|WatchHandle[]Handles marked for removal once the object is destroyed.
-
postInitialize()inherited
-
This method is primarily used by developers when implementing custom widgets. Executes after widget is ready for rendering.
-
refresh()Since: ArcGIS API for JavaScript 4.16
-
Refreshes the table contents while maintaining the current scroll position.
-
This method is primarily used by developers when implementing custom widgets. It must be implemented by subclasses for rendering.
Returns:Type Description Object The rendered virtual node.
-
renderNow()inherited
-
Renders widget to the DOM immediately.
-
scheduleRender()inherited
-
This method is primarily used by developers when implementing custom widgets. Schedules widget rendering. This method is useful for changes affecting the UI.
-
scrollToIndex(index)Since: ArcGIS API for JavaScript 4.19
-
Scrolls the table to a row based on a specified index.
Parameter:index NumberIndex of the row in which the table should scroll.
-
selectRows(params)Since: ArcGIS API for JavaScript 4.16
-
Selects the specified rows within the table.
Parameter:The selection parameters to select within the feature table.
-
showAllColumns()Since: ArcGIS API for JavaScript 4.16
-
Shows all of the columns in the table.
-
showColumn(fieldName)Since: ArcGIS API for JavaScript 4.16
-
Shows the specified column within the feature table.
Parameter:fieldName StringThe
fieldName
of the column to show.
-
sortColumn(path, direction)Since: ArcGIS API for JavaScript 4.16
-
Sorts the column in either ascending ("asc") or descending ("desc") order.
Parameters:path StringThe specified field name to sort.
direction StringThe direction to sort.
Possible Values:"asc"|"desc"
-
Since: ArcGIS API for JavaScript 4.19
-
when()
may be leveraged once an instance of the class is created. This method takes two input parameters: acallback
function and anerrback
function. Thecallback
executes when the instance of the class loads. Theerrback
executes if the instance of the class fails to load.Parameters:callback FunctionoptionalThe function to call when the promise resolves.
errback FunctionoptionalThe function to execute when the promise fails.
Returns:Type Description Promise Returns a new promise for the result of callback
that may be used to chain additional functions.Example:// Although this example uses the BasemapGallery widget, any class instance that is a promise may use when() in the same way let bmGallery = new BasemapGallery(); bmGallery.when(function(){ // This function will execute once the promise is resolved }, function(error){ // This function will execute if the promise is rejected due to an error });
-
zoomToSelection()Since: ArcGIS API for JavaScript 4.23
-
Zooms the view to the extent of the current row selection. This can also be triggered as a menu item within the table. This item will display if at least one row is selected and the view is set on the
FeatureTable
.
Type Definitions
-
ButtonMenuConfig
-
The configurable options to customize either the feature table or column menu via the menuConfig property.
- Properties:
-
container HTMLElement
The DOM Element containing the menu.
iconClass StringAdds a CSS class to the menu button's DOM node.
items ButtonMenuItem[]An array of ButtonMenuItems.
open BooleanIndicates if the menu content is visible. Default is
false
.viewModel ButtonMenuViewModelThe associated viewModel for the ButtonMenu.
- See also:
-
ButtonMenuItemConfig
-
The configurable options to customize either the feature table or column menu via the menuConfig item property.
- Properties:
-
autoCloseMenu Boolean
Indicates whether to automatically close the menu's item.
clickFunction ButtonMenuItemClickFunctionA function that executes on the ButtonMenuItem's
click
event.iconClass StringAdds a CSS class to the menu button's DOM node.
items ButtonMenuItem[]An array of individual menu items.
label StringThe label of the menu item. This can be used in conjunction with the iconClass property.
open BooleanIndicates if the menu content is visible.
selectionEnabled BooleanIndicates whether a toggled state should be applied to individual menu items.
selected BooleanIndicates whether the menu item is selected.
- See also:
-
VisibleElements
-
The visible elements that are displayed within the widget. This provides the ability to turn individual elements of the widget's display on/off.
- Properties:
-
header Boolean
Indicates whether to display the feature table's header information. Default value is
true
.menu BooleanIndicates whether to display the feature table's menu.Default value is
true
. Default value istrue
.selectionColumn BooleanIndicates whether to display the selection column in the table. Each row has a checkbox that selects its corresponding feature. Default value is
true
.columnMenus Boolean(Since 4.23) Indicates whether to display the menu items within the individual columns. Default value is
true
.menuItems ObjectThe menu items within the feature table menu.
- Specification:
-
clearSelection Boolean
Indicates whether to display the
Clear selection
menu item. Default value istrue
.refreshData BooleanIndicates whether to display the
Refresh data
menu item. Default value istrue
.selectedRecordsShowAllToggle Boolean_(Since 4.23) Indicates whether to toggle from showing only selected records in the table to showing all of the records. Default value is
true
.showSelectedToggle Boolean(Since 4.23) Indicates whether to display the
Show selected records
menu item. Default value istrue
. This will only display if records are selected within the table.toggleColumns toggleColumnsIndicates whether to enable toggling column visibility within the menu. Default value is
true
.zoomToSelection zoomToSelection(Since 4.23) Indicates whether to display the
Zoom to selected
menu item. Default value istrue
.
Event Overview
Name | Type | Summary | Class | |
---|---|---|---|---|
{added: Object[],added.feature: Graphic,added.attachments: AttachmentInfo[],added.relatedRecords: Graphic[],removed: Object[],removed.feature: Graphic,removed.attachments: AttachmentInfo[],removed.relatedRecords: Graphic[]} |
more details
Fires when a row selection is added and/or removed within the FeatureTable. |
more details | FeatureTable |
Event Details
-
selection-change
-
Fires when a row selection is added and/or removed within the FeatureTable.
- Properties:
-
An array of objects containing row (feature) data added to the table selection.
- Specification:
-
feature Graphic
The associated row (feature) added to the feature table selection.
attachments AttachmentInfo[]If applicable, an array of AttachmentInfo associated with the row (feature) added to the feature table selection.
(Currently not implemented). If applicable, an array of related features associated with the row (feature) added to the feature table selection.
An array of objects containing row (feature) data removed in the table selection.
- Specification:
-
feature Graphic
The associated row (feature) removed from the feature table selection.
attachments AttachmentInfo[]If applicable, an array of AttachmentInfo associated with the row (feature) removed from the feature table selection.
(Currently not implemented). If applicable, an array of related features associated with the row (feature) removed from the feature table selection.
- See also:
Example:// This function will fire each time a row (feature) is either added // or removed from the feature table's selection featureTable.on("selection-change", (event) => { let addedRows = event.added; // An array of features added to the selection let removedRows = event.removed; // An array of features removed from the selection });