SnappingControlsViewModel

AMD: require(["esri/widgets/support/SnappingControls/SnappingControlsViewModel"], (SnappingControlsViewModel) => { /* code goes here */ });
ESM: import SnappingControlsViewModel from "@arcgis/core/widgets/support/SnappingControls/SnappingControlsViewModel";
Class: esri/widgets/support/SnappingControls/SnappingControlsViewModel
Inheritance: SnappingControlsViewModel Accessor
Since: ArcGIS API for JavaScript 4.21

Provides the logic for the SnappingControls widget.

See also:

Constructors

new SnappingControlsViewModel(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.
Show inherited properties Hide inherited properties
Name Type Summary Class
Stringmore details

The name of the class.

more detailsAccessor
SnappingOptionsmore details

The SnappingOptions for sketching.

more detailsSnappingControlsViewModel
Stringmore details

The current state of the view model.

more detailsSnappingControlsViewModel
MapView|SceneViewmore details

The view associated with the SnappingControls widget instance.

more detailsSnappingControlsViewModel

Property Details

declaredClass Stringreadonly inherited

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

snappingOptions SnappingOptionsautocast

The SnappingOptions for sketching. It supports self and feature snapping.

state Stringreadonly

The current state of the view model.

Possible Values:"ready"|"disabled"

Default Value:disabled

The view associated with the SnappingControls widget instance.

Method Overview

Show inherited methods Hide inherited methods
Name Return Type Summary Class
more details

Adds one or more handles which are to be tied to the lifecycle of the object.

more detailsAccessor

Method Details

own(handleOrHandles)inherited
Since: 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.

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.