从 ArcGIS 服务器 URL 创建一个新图层实例。根据 URL,返回的图层类型可能是: FeatureLayer, TileLayer, MapImageLayer, ImageryLayer, ImageryTileLayer, SceneLayer, StreamLayer, IntegratedMeshLayer, PointCloudLayer, BuildingSceneLayer, ElevationLayer or GroupLayer.
这在您使用各种 ArcGIS 服务器 URL 时很有用,但您不一定知道它们创建的图层类型。此方法为您创建适当的图层类型。对于要素服务或场景服务,当 URL 指向服务并且服务具有多个图层时,返回的承诺将解析为 GroupLayer 。
从版本 4.17 开始,可以从托管要素服务加载表。这仅适用于 feature layers ,如果 FeatureLayer.isTable 返回
true
将成功加载。下表详细说明了加载特定 URL 类型时返回的内容。
URL 返回 具有一层的要素服务 FeatureLayer 其中 isTable 返回 false
。一桌特色服务 FeatureLayer 其中 isTable 返回 true
。具有多个层/表的要素服务 GroupLayer 带有图层和表格。 类型不是 "Feature Layer" 的图层将被丢弃,例如公共设施网络图层 不适用 参数:
规格:类型 说明 params Object用于创建图层的输入参数。
规格:url用于创建图层的ArcGIS 服务器 URL。
properties可选的 在此处设置任何层的属性以构建层实例(例如 popupTemplate、渲染器等)。
返回:
类型 说明 Promise<Layer> 返回一个解析为新的 Layer 实例的 Promise。 例子:
// This snippet shows how to add a feature layer from an ArcGIS Server URL // Get an ArcGIS Server URL from a custom function const arcgisUrl = getLayerUrl(); Layer.fromArcGISServerUrl({ url: arcgisUrl, properties: { // set any layer properties here popupTemplate: new PopupTemplate() } }).then(function(layer){ // add the layer to the map map.add(layer); });
// This snippet shows how to add a table from an ArcGIS Server URL // Get an ArcGIS Server URL from a custom function const arcgisUrl = getLayerUrl(); Layer.fromArcGISServerUrl({ url: arcgisUrl }).then(function(layer){ // Load the table before it can be used layer.load().then(function() { // Check that it is the right type if (layer.isTable) { // Add table to map's tables collection map.tables.add(layer); } }); });
基本信息
以下是所在类或对象的基本信息。
AMD:
require(["esri/layers/Layer"], (Layer) => { /* code goes here */ });
ESM:
import Layer from "@arcgis/core/layers/Layer";
类:
esri/layers/Layer
继承: Layer > Accessor
子类: BaseDynamicLayer , BaseElevationLayer , BaseTileLayer , BuildingSceneLayer , CSVLayer , ElevationLayer , FeatureLayer , GeoJSONLayer , GeoRSSLayer , GraphicsLayer , GroupLayer , ImageryLayer , ImageryTileLayer , IntegratedMeshLayer , KMLLayer , MapImageLayer , MapNotesLayer , OGCFeatureLayer , PointCloudLayer , RouteLayer , SceneLayer , StreamLayer , SubtypeGroupLayer , TileLayer , UnknownLayer , UnsupportedLayer , VectorTileLayer , VoxelLayer , WCSLayer , WFSLayer , WMSLayer , WMTSLayer , WebTileLayer
自从:用于 JavaScript 4.0 的 ArcGIS API
用法说明
Layer.fromArcGISServerUrl
函数(或属性)的定义如下:
相关用法
- JavaScript ArcGIS Layer.fromPortalItem用法及代码示例
- JavaScript ArcGIS Layer.fullExtent用法及代码示例
- JavaScript ArcGIS Layer.opacity用法及代码示例
- JavaScript ArcGIS Layer.visible用法及代码示例
- JavaScript ArcGIS Layer.on用法及代码示例
- JavaScript ArcGIS Layer.when用法及代码示例
- JavaScript LayerList.classes用法及代码示例
- JavaScript ArcGIS Layer layerview-create事件用法及代码示例
- JavaScript LayerList.visibleElements用法及代码示例
- JavaScript LayerList.selectionEnabled用法及代码示例
- JavaScript LayerList用法及代码示例
- JavaScript LayerList.container用法及代码示例
- JavaScript ArcGIS Layer layerview-create-error事件用法及代码示例
- JavaScript LayerList.when用法及代码示例
- JavaScript LayerList.listItemCreatedFunction用法及代码示例
- JavaScript LayerList.on用法及代码示例
- JavaScript ArcGIS LayerOptions用法及代码示例
- JavaScript LayerList.visible用法及代码示例
- JavaScript LayerList.multipleSelectionEnabled用法及代码示例
- JavaScript ArcGIS LayerView.when用法及代码示例
- JavaScript ArcGIS LabelClass.repeatLabelDistance用法及代码示例
- JavaScript ArcGIS LabelSymbol3D.callout用法及代码示例
- JavaScript ArcGIS LabelSymbol3D.verticalOffset用法及代码示例
- JavaScript ArcGIS LabelSymbol3D用法及代码示例
- JavaScript ArcGIS LabelClass.clone用法及代码示例
注:本文由纯净天空筛选整理自arcgis.com大神的英文原创作品 Layer.fromArcGISServerUrl。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。