LayerListViewModel

require(["esri/widgets/LayerList/LayerListViewModel"], function(LayerListVM) { /* code goes here */ });
Class: esri/widgets/LayerList/LayerListViewModel
Inheritance: LayerListViewModel Accessor
Since: ArcGIS API for JavaScript 4.2

Provides the logic for the LayerList widget. To hide layers in the map from the LayerList widget, set the listMode property on the layer(s) to hide.

See also:

Constructors

new LayerListViewModel(properties)
Parameter:
properties Object
optional

See the properties for a list of all the properties that may be passed into the constructor.

Property Overview

Any properties can be set, retrieved or listened to. See the Working with Properties topic.
NameTypeSummaryClass
String

The name of the class.

more details
more detailsAccessor
Function

Specifies a function that accesses each ListItem.

more details
more detailsLayerListViewModel
Collection<ListItem>

A collection of ListItems representing operational layers.

more details
more detailsLayerListViewModel
String

The view model's state.

more details
more detailsLayerListViewModel
MapView|SceneView

The view from which the widget will operate.

more details
more detailsLayerListViewModel

Property Details

declaredClass Stringreadonly inherited
Since: ArcGIS API for JavaScript 4.7

The name of the class. The declared class name is formatted as esri.folder.className.

listItemCreatedFunction Function
Since: ArcGIS API for JavaScript 4.4

Specifies a function that accesses each ListItem. Each list item can be modified according to its modifiable propeties. Actions can be added to list items using the actionsSections property of the ListItem.

Example:
layerListViewModel.listItemCreatedFunction = function (event) {

   // The event object contains properties of the
   // layer in the LayerList widget.

   var item = event.item;

   if (item.title === "US Demographics") {
     // open the list item in the LayerList
     item.open = true;
     // change the title to something more descriptive
     item.title = "Population by county";
     // set an action for zooming to the full extent of the layer
     item.actionsSections = [[{
       title: "Go to full extent",
       className: "esri-icon-zoom-out-fixed",
       id: "full-extent"
     }]];
   }
});
operationalItems Collection<ListItem>readonly

A collection of ListItems representing operational layers. To hide layers from the LayerList widget, set the listMode property on the layer(s) to hide.

See also:
state Stringreadonly

The view model's state.

Possible Values: loading | disabled

Default Value:disabled

The view from which the widget will operate.

Method Overview

NameReturn TypeSummaryClass

Triggers the trigger-action event and executes the given action or action toggle.

more details
more detailsLayerListViewModel

Method Details

triggerAction(action, item)

Triggers the trigger-action event and executes the given action or action toggle.

Parameters:

The action to execute.

An item associated with the action.

Event Overview

NameTypeSummaryClass
{action: ActionButton,ActionToggle,item: ListItem}

Fires after the user clicks on an action or action toggle inside the LayerList widget.

more details
more detailsLayerListViewModel

Event Details

trigger-action

Fires after the user clicks on an action or action toggle inside the LayerList widget. This event may be used to define a custom function to execute when particular actions are clicked.

Properties:

The action clicked by the user.

An item associated with the action.

API Reference search results

NameTypeModule
Loading...