require(["esri/widgets/TableList/TableListViewModel"], (TableListVM) => { /* code goes here */ });
import TableListVM from "@arcgis/core/widgets/TableList/TableListViewModel.js";
esri/widgets/TableList/TableListViewModel
Provides the logic for the TableList widget.
const tableList = new TableList({
viewModel: { // autocasts as new TableListViewModel
map: map // specify the map containing the tables
}
});
Constructors
-
Parameterproperties Objectoptional
See the properties for a list of all the properties that may be passed into the constructor.
Property Overview
Name | Type | Summary | Class |
---|---|---|---|
Whether to provide an indication if a layer is being published in the TableList. | TableListViewModel | ||
The name of the class. | Accessor | ||
Specifies a function that accesses each ListItem. | TableListViewModel | ||
Specifies whether to ignore the listMode property of the layers to display all tables. | TableListViewModel | ||
A reference to the map containing the tables. | TableListViewModel | ||
The view model's state. | TableListViewModel | ||
The collection of table ListItems displayed within the widget. | TableListViewModel |
Property Details
-
checkPublishStatusEnabled
checkPublishStatusEnabled Boolean
Since: ArcGIS Maps SDK for JavaScript 4.25TableListViewModel since 4.17, checkPublishStatusEnabled added at 4.25. -
Whether to provide an indication if a layer is being published in the TableList. When a layer is publishing, a rotating square will appear to the right of the list item title. The list item publishing property will be
false
ifcheckPublishStatusEnabled
isfalse
.- Default Value:false
-
listItemCreatedFunction
listItemCreatedFunction ListItemCreatedHandler
-
Specifies a function that accesses each ListItem. Each list item can be modified according to its modifiable properties. Actions can be added to list items using the actionsSections property of the ListItem.
-
listModeDisabled
listModeDisabled Boolean
Since: ArcGIS Maps SDK for JavaScript 4.30TableListViewModel since 4.17, listModeDisabled added at 4.30. -
Specifies whether to ignore the listMode property of the layers to display all tables. A common use case for
listModeDisabled
is when you want to use the TableList to manage and configure a tables'slistMode
value.- Default Value:false
- See also
-
A reference to the map containing the tables. Set this property to access the underlying tables within the map.
- See also
Example// FeatureLayer.isTable = true. Layer.fromPortalItem({ // Loads a layer (table) from a portal item portalItem: { // autocasts new PortalItem() id: "add portal id item" } }).then(function(layer) { // Load the layer layer.load().then(function() { // Check if the layer is a table if (layer.isTable) { map.tables.add(layer); console.log(map.tables); } }); }); const tableList = new TableList({ map: map // map contains tables collection });
-
state
state Stringreadonly
-
The view model's state.
Possible Values:"loading" |"ready" |"disabled"
- Default Value:disabled
-
tableItems
tableItems Collection<ListItem>readonly
-
The collection of table ListItems displayed within the widget.
Method Overview
Name | Return Type | Summary | Class |
---|---|---|---|
Adds one or more handles which are to be tied to the lifecycle of the object. | Accessor | ||
Returns true if a named group of handles exist. | Accessor | ||
Removes a group of handles owned by the object. | Accessor | ||
Triggers the trigger-action event and executes the given action or action toggle. | TableListViewModel |
Method Details
-
Inherited from Accessor
Since: ArcGIS Maps SDK for JavaScript 4.25Accessor since 4.0, addHandles added at 4.25. -
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.when( () => !view.updating, () => { wkidSelect.disabled = false; }, { once: true } ); this.addHandles(handle); // Destroy the object this.destroy();
ParametershandleOrHandles WatchHandle|WatchHandle[]Handles marked for removal once the object is destroyed.
groupKey *optionalKey identifying the group to which the handles should be added. All the handles in the group can later be removed with Accessor.removeHandles(). If no key is provided the handles are added to a default group.
-
hasHandles
InheritedMethodhasHandles(groupKey){Boolean}
Inherited from AccessorSince: ArcGIS Maps SDK for JavaScript 4.25Accessor since 4.0, hasHandles added at 4.25. -
Returns true if a named group of handles exist.
ParametergroupKey *optionalA group key.
ReturnsType Description Boolean Returns true
if a named group of handles exist.Example// Remove a named group of handles if they exist. if (obj.hasHandles("watch-view-updates")) { obj.removeHandles("watch-view-updates"); }
-
Inherited from Accessor
Since: ArcGIS Maps SDK for JavaScript 4.25Accessor since 4.0, removeHandles added at 4.25. -
Removes a group of handles owned by the object.
ParametergroupKey *optionalA group key or an array or collection of group keys to remove.
Exampleobj.removeHandles(); // removes handles from default group obj.removeHandles("handle-group"); obj.removeHandles("other-handle-group");
-
Triggers the trigger-action event and executes the given action or action toggle.
Parametersaction ActionButton|ActionToggleThe action to execute.
item ListItemAn item associated with the action.
Type Definitions
-
Function definition for the listItemCreatedFunction property.
Parametersevent ObjectAn object containing a list item created by the TableList.
Specificationitem ListItemA list item created by the TableListViewModel. You can modify the properties of this item to customize the text, actions, and visibility of the list item. See the documentation for the listItemCreatedFunction for more details.
Event Overview
Name | Type | Summary | Class |
---|---|---|---|
|
{action: ActionButton|ActionToggle,item: ListItem} |
Fires after the user clicks on an action or action toggle inside the TableList widget. |
TableListViewModel |
Event Details
-
Fires after the user clicks on an action or action toggle inside the TableList widget. This event may be used to define a custom function to execute when particular actions are clicked.
- Properties
-
action ActionButton|ActionToggle
The action clicked by the user.
item ListItemAn item associated with the action.
ExampletableList.viewModel.on("trigger-action", function (event) { let item = event.item; // Capture the action id. let id = event.action.id; if (id === "information") { window.open(item.layer.url); } });