JimuMapView

Class

JimuMapView is the view for developers to develop the map-related functions. For example, developers can use the view property of the JimuMapView instance to get the original ArcGIS Maps SDK for JavaScript View, then use the original view to develop the map-related functions. At the same time, JimuMapView also provides properties such as isActive and status to indicate the current status in the map widget.

JimuMapView is a wrapper class for the ArcGIS Maps SDK for JavaScript View. It is created by a map widget using a map DataSource.

Use dark colors for code blocksCopy
                    
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import { JimuMapView } from 'jimu-arcgis';

// Add the State interface
interface State {
 extent: __esri.Extent
}

// On an active view change, set the extent State property
onActiveViewChange = (jimuMapView: JimuMapView) => {
 if(!this.extentWatch){
  this.extentWatch = jimuMapView.view.watch('extent', extent => {
    this.setState({
      extent
    })
  });
 }
}

// Use the `JimuMapView` instance from the map widget through the `JimuMapViewComponent` React component
<JimuMapViewComponent useMapWidgetId={this.props.useMapWidgetIds[0]} onActiveViewChange={this.onActiveViewChange}></JimuMapViewComponent>

Constructors

constructor

Class Constructor
new JimuMapView(optionsJimuMapViewConstructorOptions): JimuMapView
Parameters
ParameterType
options
JimuMapViewConstructorOptions
Returns 
JimuMapView

Properties

PropertyTypeNotes
string

The id of the DataSource selected to create the map.

string

The id of the JimuMapView instance.

boolean

The isActive property indicates whether the map in the map widget is accessible. For example, for a single-source map, there is a single JimuMapView instance, therefore, the isActive is always true. With a multi-source map, there are two JimuMapView instances. In the multi-source map, the property isActive is true for the top JimuMapView instance, and false for the one beneath. Upon clicking the switch map tool, the isActive properties will switch.

{ [jimuLayerViewId: string]: JimuLayerView }

The union for all JimuLayerView instances and the layer view object wrapper.

The created map tools (ArcGIS JavaScript API widgets) for this view.

string

The id of the widget creating the JimuMapView instance.

The status of the JimuMapView instance. JimuMapViewStatus enumeration members include "LOADING", "LOADED" and "FAILED".

MapView | SceneView

The view is the ArcGIS Maps SDK for JavaScript View, including aMapView or aSceneView. In the ArcGIS Maps SDK for JavaScript, the MapView and SceneView are part of the __esri namespace types. Thus, their types are __esri.MapView and __esri.SceneView.

dataSourceId

Class Property
dataSourceId: string

The id of the DataSource selected to create the map.

id

Class Property
id: string

The id of the JimuMapView instance.

isActive

optional
Class Property
isActive: boolean

The isActive property indicates whether the map in the map widget is accessible. For example, for a single-source map, there is a single JimuMapView instance, therefore, the isActive is always true. With a multi-source map, there are two JimuMapView instances. In the multi-source map, the property isActive is true for the top JimuMapView instance, and false for the one beneath. Upon clicking the switch map tool, the isActive properties will switch.

jimuLayerViews

optional
Class Property
jimuLayerViews: { [jimuLayerViewId: string]: JimuLayerView }

The union for all JimuLayerView instances and the layer view object wrapper.

Type declaration

jimuMapTools

Class Property
jimuMapTools: JimuMapTool[]

The created map tools (ArcGIS JavaScript API widgets) for this view.

mapWidgetId

Class Property
mapWidgetId: string

The id of the widget creating the JimuMapView instance.

status

Class Property
status: JimuMapViewStatus

The status of the JimuMapView instance. JimuMapViewStatus enumeration members include "LOADING", "LOADED" and "FAILED".

view

Class Property
view: MapView | SceneView

The view is the ArcGIS Maps SDK for JavaScript View, including aMapView or aSceneView. In the ArcGIS Maps SDK for JavaScript, the MapView and SceneView are part of the __esri namespace types. Thus, their types are __esri.MapView and __esri.SceneView.

Methods

MethodReturnsNotes
addOrRemoveDataOnMap(newAddToMapDatas)
void

add layers according to the corresponding types of data source

void

Clear the selected features.

void

Destroy the JimuMapView instance and the ArcGIS Maps SDK for JavaScript View at the same time.

drawDataOnMap(newShowOnMapDatas)
void

Draw data on the map, using a dedicated GraphicsLayerfor every data entry. This will clear the layers drawn previously.

drawDataRecordSet(dataSet, targetLayerId, title?, symbolOption?)
Promise<Graphic[]>

Draw the features in a GraphicsLayer.

getChildJimuLayerViews(jimuLayerViewId)

Return all child JimuLayerViews.

getParentJimuLayerViews(jimuLayerViewId)

Return all parent JimuLayerViews.

updateDrawnDataRecordSet(dataSet, targetLayerId, title?, symbolOption?)
Promise<Graphic[]>

Update the drawn GraphicsLayer.

Promise<JimuMapView>

Resolve the JimuMapView when it is loaded.

addOrRemoveDataOnMap

Class Method
addOrRemoveDataOnMap(newAddToMapDatasAddToMapDatas): void

add layers according to the corresponding types of data source

Parameters
ParameterType
newAddToMapDatas
AddToMapDatas
Returns 
void

clearSelectedFeatures

Class Method
clearSelectedFeatures(): void

Clear the selected features.

Returns 
void

destroy

Class Method
destroy(): void

Destroy the JimuMapView instance and the ArcGIS Maps SDK for JavaScript View at the same time.

Returns 
void

drawDataOnMap

Class Method
drawDataOnMap(newShowOnMapDatasShowOnMapDatas): void

Draw data on the map, using a dedicated GraphicsLayerfor every data entry. This will clear the layers drawn previously.

Parameters
ParameterType
newShowOnMapDatas
ShowOnMapDatas
Returns 
void

drawDataRecordSet

Class Method
drawDataRecordSet(dataSetDataRecordSet, targetLayerIdstring, title?string, symbolOption?SymbolOption): Promise<Graphic[]>

Draw the features in a GraphicsLayer.

Parameters
ParameterType
dataSet
DataRecordSet
targetLayerId
string
title
string
symbolOption
SymbolOption
Returns 
Promise<Graphic[]>

getChildJimuLayerViews

Class Method
getChildJimuLayerViews(jimuLayerViewIdany): JimuLayerView[]

Return all child JimuLayerViews.

Parameters
ParameterType
jimuLayerViewId
any
Returns 
JimuLayerView[]

getParentJimuLayerViews

Class Method
getParentJimuLayerViews(jimuLayerViewIdstring): JimuLayerView[]

Return all parent JimuLayerViews.

Parameters
ParameterType
jimuLayerViewId
string
Returns 
JimuLayerView[]

updateDrawnDataRecordSet

Class Method
updateDrawnDataRecordSet(dataSetDataRecordSet, targetLayerIdstring, title?string, symbolOption?SymbolOption): Promise<Graphic[]>

Update the drawn GraphicsLayer.

Parameters
ParameterType
dataSet
DataRecordSet
targetLayerId
string
title
string
symbolOption
SymbolOption
Returns 
Promise<Graphic[]>

whenJimuMapViewLoaded

Class Method
whenJimuMapViewLoaded(): Promise<JimuMapView>

Resolve the JimuMapView when it is loaded.

Returns 
Promise<JimuMapView>

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