Class
JimuQueriableLayerView
is an abstract class, which is the base class of the following classes:JimuFeatureLayerView
, JimuSceneLayerView
, JimuBuildingComponentSublayerView
, JimuImageryLayerView
, JimuOrientedImageryLayerView
, JimuSubtypeGroupLayerView
and JimuSubtypeSublayerView
.JimuQueriableLayerView
is the wrapper of queryable layers. A queryable layer is a layer that can query features, having a specific JimuQueriableLayerView
and ArcGISQueriableDataSource
corresponding to it.JimuQueriableLayerView
is used to synchronize state with ArcGISQueriableDataSource
. For example, FeatureLayer
is corresponding to JimuFeatureLayerView
and FeatureLayerDataSource
.
When a widget updates the feature selection of FeatureLayerDataSource
, JimuFeatureLayerView
will highlight these selected features on the map.
Properties
Property | Type | Notes |
---|---|---|
fromRuntime inherited | boolean | true means the JimuLayerView is created from runtime. e.g. The JimuLayerView is created by AddData widget at runtime. false means the layer is a builtin layer of WebMap or WebScene. |
id inherited | string | The id of the JimuLayerView instance. It connects the JimuMapView.id and the JimuLayerId with "-" |
index inherited | number | The order defined in the webmap |
jimuMapViewId inherited | string | The jimuMapViewId is the corresponding JimuMapView instance id. |
layer inherited | any | The layer is the corresponding layer object in ArcGIS JavaScript API View.map. |
layerDataSourceId inherited | string | The layerDataSourceId is the corresponding data source id. This id always has value, but the layer data source may not be created. |
type inherited | string | The layer type, see ArcGIS Maps SDK for JavaScript Layer type. |
SupportedLayerViewType | The |
fromRuntime
fromRuntime: boolean
true means the JimuLayerView is created from runtime. e.g. The JimuLayerView is created by AddData widget at runtime. false means the layer is a builtin layer of WebMap or WebScene.
id
id: string
The id of the JimuLayerView instance. It connects the JimuMapView.id and the JimuLayerId with "-"
jimuMapViewId
jimuMapViewId: string
The jimuMapViewId is the corresponding JimuMapView instance id.
layer
layer: any
The layer is the corresponding layer object in ArcGIS JavaScript API View.map.
layerDataSourceId
layerDataSourceId: string
The layerDataSourceId is the corresponding data source id. This id always has value, but the layer data source may not be created.
type
type: string
The layer type, see ArcGIS Maps SDK for JavaScript Layer type.
view
Class Propertyview: SupportedLayerViewType
The view
is the ArcGIS Maps SDK for JavaScript LayerView
or BuildingComponentSublayerView
.
Methods
Method | Returns | Notes |
---|---|---|
Promise<ArcGISQueriableDataSource> | Create corresponding data source for the layer. | |
destroy() | void | Destroy the JimuLayerView instance. |
getAllAncestorJimuLayerViews() inherited | Get all ancestor JimuLayerViews. | |
getJimuMapView() inherited | Get the JimuMapView that the current JimuLayerView belongs to. | |
Return the corresponding data source of the layer. | ||
getMapDataSource() inherited | Get the map data source of the layer. | |
getMapSceneView() inherited | MapView | SceneView | Return the MapView or SceneView of the layer view. |
getParentJimuLayerView() inherited | Get parent JimuLayerView. | |
Promise<Graphic[]> | Get selected features of current JimuLayerView. | |
isLayerVisible() inherited | boolean | If any layer in the layer tree is invisible, the layer is considered invisible. |
selectFeatureById(id, record?) | Promise<void> | When selecting a feature by ID, we can pass in the data source record so when the selected records are not loaded in data source, we can add them in. However, if the record is not loaded and is not passed in, there will be no selection. If we can get the layer data source, the record can be a FeatureDataRecord or a Graphic. Otherwise, the record can only be a Graphic. |
selectFeaturesByIds(ids, records?) | Promise<void> | See |
selectFeaturesByQuery(query, selectionMode) | Promise<IFeature | Graphic[]> | Select features from the layer. If the last select operation has not been completed, calling this method will automatically terminate the previous selection progress. |
setDefinitionExpression(localDefinitionExpression) | void | Sets the definitionExpression on the layer and the view, but does not apply the definitionExpression to the data source. |
createLayerDataSource
Class MethodcreateLayerDataSource(): Promise<ArcGISQueriableDataSource>
Create corresponding data source for the layer.
Returns
Promise<ArcGISQueriableDataSource>
getAllAncestorJimuLayerViews
getAllAncestorJimuLayerViews(): JimuLayerView[]
Get all ancestor JimuLayerViews.
Returns
JimuLayerView[]
getJimuMapView
getJimuMapView(): JimuMapView
Get the JimuMapView that the current JimuLayerView belongs to.
Returns
JimuMapView
getLayerDataSource
Class MethodgetLayerDataSource(): ArcGISQueriableDataSource
Return the corresponding data source of the layer.
Returns
ArcGISQueriableDataSource
getMapDataSource
getMapDataSource(): MapDataSource
Get the map data source of the layer.
Returns
MapDataSource
getMapSceneView
getMapSceneView(): MapView | SceneView
Return the MapView or SceneView of the layer view.
Returns
MapView | SceneView
getParentJimuLayerView
getParentJimuLayerView(): JimuLayerView
Get parent JimuLayerView.
Returns
JimuLayerView
getSelectedFeatures
Class MethodgetSelectedFeatures(): Promise<Graphic[]>
Get selected features of current JimuLayerView.
Returns
Promise<Graphic[]>
isLayerVisible
isLayerVisible(): boolean
If any layer in the layer tree is invisible, the layer is considered invisible.
Returns
boolean
selectFeatureById
Class MethodselectFeatureById(id: number, record?: FeatureDataRecord | Graphic): Promise<void>
When selecting a feature by ID, we can pass in the data source record so when the selected records are not loaded in data source, we can add them in. However, if the record is not loaded and is not passed in, there will be no selection. If we can get the layer data source, the record can be a FeatureDataRecord or a Graphic. Otherwise, the record can only be a Graphic.
Parameters
Parameter | Type |
---|---|
id | number |
record | FeatureDataRecord | Graphic |
Returns
Promise<void>
selectFeaturesByIds
Class MethodselectFeaturesByIds(ids: number[], records?: FeatureDataRecord[]): Promise<void>
See selectFeatureById
for more details.
Parameters
Parameter | Type |
---|---|
ids | number[] |
records | FeatureDataRecord[] |
Returns
Promise<void>
selectFeaturesByQuery
Class MethodselectFeaturesByQuery(query: ArcGISQueryParams, selectionMode: DataSourceSelectionMode): Promise<IFeature | Graphic[]>
Select features from the layer. If the last select operation has not been completed, calling this method will automatically terminate the previous selection progress.
Parameters
Parameter | Type | Notes |
---|---|---|
query | ArcGISQueryParams | The query parameters. |
selection | DataSourceSelectionMode | This parameter is to indicate how the new select operation affects the original selection. It can only be the following enumeration values: |
Returns
Promise<IFeature | Graphic[]>