UnknownLayer

AMD: require(["geoscene/layers/UnknownLayer"], (UnknownLayer) => { /* 代码 */ });
ESM: import UnknownLayer from "@geoscene/core/layers/UnknownLayer";
类: geoscene/layers/UnknownLayer
继承于: UnknownLayer Layer Accessor
起始版本: GeoScene API for JavaScript 4.22

表示无法确定其类型的图层。例如,当从 URL 加载图层并且无法确定图层类型时,则会将其表示为此类的实例。

在加载 WebMap 或 WebScene 时,也可以使用此类的实例。如果 WebMap/WebScene 中某个图层的服务不可用,并且无法确定图层类型,则该图层将表示为 UnknownLayer。请务必注意,不支持从此类构造层。

示例:

属性列表

可以设置、检索或监听的属性。参见 使用属性
展示继承属性 隐藏继承属性
属性 类型 描述
String更多信息

类名。

更多信息Accessor
Extent更多信息

图层的完整范围。

更多信息Layer
String更多信息

分配给图层的唯一 ID。

更多信息Layer
String更多信息

指示图层应如何在 LayerList 小部件中显示。

更多信息Layer
Boolean更多信息

指示图层的资源是否已加载。

更多信息Layer
Error更多信息

如果在加载时发生错误,则返回 Error 对象。

更多信息Layer
String更多信息

表示加载操作的状态。

更多信息Layer
Object[]更多信息

加载时出现的警告列表。

更多信息Layer
Number更多信息

图层的不透明度。

更多信息Layer
String更多信息

图层的标题,用于在 LayerList 微件等位置识别它。

更多信息Layer
String更多信息对于 UnknownLayer,类型始终为 "unknown". 更多信息UnknownLayer
Boolean更多信息

指示图层是否在视图中可见。

更多信息Layer

属性详细说明

declaredClass Stringreadonly inherited
起始版本: GeoScene API for JavaScript 4.22

类名。类的名称声明格式为 geoscene.folder.className

图层的完整范围。 默认情况下,这是全球范围的。 可以使用此属性设置视图的范围以匹配图层的范围,这样看起来要素填充了视图。 请参阅下面的示例片段。

示例代码:
// 图层加载后,将视图的范围设置为图层的全范围
layer.when(function(){
  view.extent = layer.fullExtent;
});

分配给图层的唯一 ID。 如果没有开发者设置,则在图层加载时自动生成。

listMode String inherited

指示图层应如何在 LayerList 微件中显示。 下面列出了可能的值。

描述
show 该图层在内容列表中可见。
hide 该图层在内容列表中不可见。
hide-children 如果图层是GroupLayerBuildingSceneLayerKMLLayer, MapImageLayer, TileLayerWMSLayer,从内容表中隐藏子图层。

可选值:"show"|"hide"|"hide-children"

默认值:show
loaded Booleanreadonly inherited

指示图层的资源是否已加载。 当 true 时, 对象的所有属性都可以访问。

默认值:false
loadError Errorreadonly inherited

如果在加载时发生错误,则返回 Error 对象。

默认值:null
loadStatus Stringreadonly inherited

表示加载操作的状态。

描述
not-loaded 该对象的资源尚未加载。
loading 该对象的资源正在加载。
loaded 该对象的资源已正确加载。
failed 对象的资源加载失败。 有关详细信息,请参阅 loadError

可选值:"not-loaded"|"loading"|"failed"|"loaded"

默认值:not-loaded
loadWarnings Object[]readonly inherited

加载时出现的警告列表。

opacity Number inherited

图层的不透明度。 该值的范围可以在 10 之间,其中 0 是 100% 透明的,而 1 是完全不透明的。

默认值:1
示例代码:
// 使图层 50% 透明
layer.opacity = 0.5;

图层的标题,用于在 LayerList 微件等位置识别它。

如果图层是从门户项目加载的,则将使用门户项目的标题。如果图层作为 webmap 或 webscene 的一部分加载,则将使用存储在 webmap/webscene 中的图层标题

type Stringreadonly

对于 UnknownLayer,类型始终为 "unknown".

visible Boolean inherited

指示图层是否在 View 中可见。 当 false 时,图层仍可能添加到视图中引用的 地图实例,但其功能将不可见 在视图中。

默认值:true
示例代码:
// 该层在视图中不可见
layer.visible = false;

方法列表

展示继承方法 隐藏继承方法
属性 返回值类型 描述
更多信息

如果 load() 操作已经在进行中,则取消它。

更多信息Layer
Promise<LayerView>更多信息

当图层被添加到 Map.layers 集合并且必须为其创建图层视图时,由视图调用,例如 MapViewSceneView

更多信息Layer
更多信息

销毁图层和任何相关资源(包括其portalItem,如果它是图层上的属性)。

更多信息Layer
Boolean更多信息

在实例上触发事件。

更多信息Layer
Promise<Object>更多信息

在图层可用时获取图层的自定义属性数据。

更多信息Layer
Boolean更多信息

指示实例上是否存在与提供的事件名称匹配的事件侦听器。

更多信息Layer
Boolean更多信息

isFulfilled() 可用于验证创建类的实例是否已完成(无论成功或失败)。

更多信息Layer
Boolean更多信息

isRejected() 可用于验证创建类的实例是否失败。

更多信息Layer
Boolean更多信息

isResolved() 可用于验证创建类的实例是否成功。

更多信息Layer
Promise更多信息

加载该类引用的资源。

更多信息Layer
Object更多信息

在实例上注册事件处理程序。

更多信息Layer
Promise更多信息

when() 创建类的实例后,会被执行一次。

更多信息Layer

方法详细说明

cancelLoad()inherited

如果 load() 操作已经在进行中,则取消它。

createLayerView(view, options){Promise<LayerView>}inherited

当图层被添加到 Map.layers 集合并且图层视图必须为其创建时,由MapViewSceneView等视图调用, 该方法内部使用,没有直接调用的用例

参数:
view *

父视图

options Object
optional

指定附加选项的对象。  有关此对象所需的属性,请参阅下面的对象规格表。

规范:
signal AbortSignal
optional

一个中止图层视图创建的信号。

返回值:
类型 描述
Promise<LayerView> LayerView 实例解析。
示例:
destroy()inherited
起始版本: GeoScene API for JavaScript 4.22

销毁图层和任何相关资源(包括其portalItem,如果它是图层上的属性)。该层一旦被销毁就不能再使用了。

被破坏的图层将从其父对象中删除,例如 MapWebMapWebScene,Basemap, Ground ,或 GroupLayer
示例:
emit(type, event){Boolean}inherited
起始版本: GeoScene API for JavaScript 4.22

在实例上触发事件。仅当创建此类的子类时才应使用此方法。

参数:
type String

事件名称

event Object
optional

事件负载。

返回值:
类型 描述
Boolean 如果侦听器收到通知,则为true 
fetchAttributionData(){Promise<Object>}inherited

在图层可用时获取图层的自定义属性数据。

返回值:
类型 描述
Promise<Object> 解析为包含图层自定义属性数据的对象。
hasEventListener(type){Boolean}inherited

指示实例上是否存在与提供的事件名称匹配的事件侦听器。

参数:
type String

事件名称

返回值:
类型 描述
Boolean 如果类支持输入事件,则返回 true。
isFulfilled(){Boolean}inherited

isFulfilled() 可用于验证创建类的实例是否已完成(无论成功或失败)。 如果已完成,将会返回true

返回值:
类型 描述
Boolean 指示创建类的实例是否已完成(无论成功或失败)。
isRejected(){Boolean}inherited

isRejected() 可用于验证创建类的实例是否失败。 如果失败, 将会返回 true

返回值:
类型 描述
Boolean 指示是否已拒绝创建类的实例。
isResolved(){Boolean}inherited

isResolved() 可用于验证创建类的实例是否成功。 如果成功, 将会返回 true

返回值:
类型 描述
Boolean 指示是否已解析创建类的实例。
load(signal){Promise}inherited

加载此类引用的资源。 此方法自动为 View 及其在 Map 中引用的所有资源执行 如果视图是用地图实例构造的。

当访问一个不会在View中加载的资源时,开发者必须调用这个方法。

load() 方法仅在第一次调用时触发资源的加载。 随后的调用返回相同的promise。

可以提供一个 signal 来停止对 Loadable 实例加载状态的关注。 当信号中止时,实例不会停止其加载过程,只有 cancelLoad 可以中止它。

参数:
signal AbortSignal
optional

可用于中止异步任务的 Signal 对象。 当发出中止信号时,返回的 Promise 将被一个名为 AbortErrorError 拒绝。另请参阅 AbortController 以获取有关如何构造可用于传递中止 signals 的控制器的更多信息。

返回值:
类型 描述
Promise 资源已加载时解析。
on(type, listener){Object}inherited

在实例上注册事件处理程序。调用此方法将事件与侦听器挂钩

参数:

要监听的event 或者事件数组

listener Function

事件触发时要调用的函数

返回值:
类型 描述
Object 返回一个remove() 方法的事件处理程序,该方法用以停止侦听事件。
属性 类型 描述
remove Function 当被调用时,从事件中移除监听器。
示例代码:
view.on("click", function(event){
  // event是事件触发后返回的事件句柄。
  console.log(event.mapPoint);
});
when(callback, errback){Promise}inherited
起始版本: GeoScene API for JavaScript 4.22

when() 创建类的实例后,会被执行一次。该方法接受两个参数: callback 函数和 errback 函数。 callback 在类的实例加载时执行。 如果类的实例无法加载,则执行 errback

参数:
callback Function
optional

当 Promise 成功时,该函数将被调用。

errback Function
optional

当 Promise 失败时,该函数将被调用。

返回值:
类型 描述
Promise 返回回调结果的新promise,可用于 链接其他函数。
示例代码:
// 尽管此示例使用 MapView,但任何作为 Promise 的类实例都可以以相同的方式使用 when()
let view = new MapView();
view.when(function(){
  // 当 Promise resolved 时,函数将被执行
}, function(error){
  // 当 Promise 通过 rejected 抛错时,这个函数将被执行
});

事件列表

显示继承事件 隐藏继承事件
属性 类型 描述
{view: View,layerView: LayerView}
更多信息

在图层的 LayerView创建并在视图中呈现后触发。

更多信息 Layer
{view: View,error: Error}
更多信息

将图层添加到地图后,在创建 LayerView 期间发出错误时触发。

更多信息 Layer
{view: View,layerView: LayerView}
更多信息

在层的 LayerView 被销毁并且不再在视图中呈现后触发。

更多信息 Layer

事件详细说明

layerview-createinherited

在图层的 LayerView创建并在视图中呈现后触发。

属性:
view View

创建 layerView 的视图。

layerView LayerView

视图中渲染的 LayerView 。

示例:
示例代码:
// 每次为此特定视图创建图层视图时,都会触发此函数。

layer.on("layerview-create", function(event){
  / 发出此事件的图层的 LayerView
  event.layerView;
});
layerview-create-errorinherited

将图层添加到地图后,在创建 LayerView 期间发出错误时触发。

属性:
view View

为图层创建图层视图失败触发这个事件的视图。

error Error

描述层视图创建失败原因的错误对象。

示例:
示例代码:
// 在创建图层的图层视图期间发生错误时会触发此函数
layer.on("layerview-create-error", function(event) {
  console.error("LayerView failed to create for layer with the id: ", layer.id, " in this view: ", event.view);
});
layerview-destroyinherited

在层的 LayerView 被销毁并且不再在视图中呈现后触发。

属性:
view View

销毁 layerView 的图层。

layerView LayerView

被销毁的 LayerView 图层。

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