LegendViewModel

require(["esri/widgets/Legend/LegendViewModel"], function(LegendVM) { /* code goes here */ });
Class: esri/widgets/Legend/LegendViewModel
Inheritance: LegendViewModel Accessor
Since: ArcGIS API for JavaScript 4.11

Provides the logic for the Legend widget, which displays a label and symbol for interpreting the Renderer of each layer in a map. This class may be used to create custom, interactive Legend widgets.

See also:
Example:
const legend = new Legend({
  view: view,
  viewModel: new LegendViewModel({
    view: view
  })
});
view.ui.add(legend, "bottom-left");

Constructors

new LegendViewModel(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
Collection<ActiveLayerInfo>

Collection of ActiveLayerInfo objects used by the legend view to display data in the legend.

more details
more detailsLegendViewModel
Boolean

Indicates whether to show the Basemap layers in the Legend.

more details
more detailsLegendViewModel
String

The name of the class.

more details
more detailsAccessor
Object[]

Specifies a subset of the layers in the map to display in the legend.

more details
more detailsLegendViewModel
String

The view model's state.

more details
more detailsLegendViewModel
MapView|SceneView

The view from which the widget will operate.

more details
more detailsLegendViewModel

Property Details

Autocasts from Object[]

Collection of ActiveLayerInfo objects used by the legend view to display data in the legend. Use this property to hide or display the layer's symbols in the legend when an ActiveLayerInfo is removed from or added to this collection.

basemapLegendVisible Boolean

Indicates whether to show the Basemap layers in the Legend.

Default Value:filterBasemaps
Example:
legend.viewModel.basemapLegendVisible = true;
declaredClass Stringreadonly inherited

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

layerInfos Object[]

Specifies a subset of the layers in the map to display in the legend. If this property is not set, all operational layers in the map will display in the legend. This property can be used to control layer display order in the legend. Objects in this array are defined with the properties listed below.

Properties:
title String
optional

Specify a title for the layer. If no title is specified the service name is used.

layer Layer
optional

A layer to add to the legend.

state Stringreadonly

The view model's state.

Possible Values:"ready"|"disabled"

Default Value:disabled

The view from which the widget will operate.

API Reference search results

NameTypeModule
Loading...