ListItem 类表示 LayerListViewModel 中的 operationalItems 之一。在 LayerList 微件 UI 中,列表项目表示视图中显示的图层。它提供对关联图层属性的访问,并允许开发人员配置与图层相关的操作,并可将内容添加到与图层相关的项目中。
要隐藏 LayerList 微件中的列表项目,您必须将所需图层上的 listMode 属性设置为 hide
。您无法使用此类或 LayerList 类隐藏列表项目。
属性概述
名称 | 类型 | 描述 | 类 |
---|---|---|---|
Boolean | 操作面板是否在 LayerList 中打开。 更多详情 | ListItem | |
Collection<Collection<(ActionButton|ActionToggle)>> | 可以在项目上触发的嵌套二维操作集合。 更多详情 | ListItem | |
Collection<ListItem> | 当图层包含子图层时,此属性是属于给定图层的 ListItem 对象的集合。 更多详情 | ListItem | |
Boolean | 指示是否可以排序或移动/重新排序列表项目的子项 (或 GroupLayer 中的子图层)。 更多详情 | ListItem | |
String | 仅当列表项目表示 StreamLayer 时有效。 更多详情 | ListItem | |
String | 类的名称。 更多详情 | Accessor | |
Error | 如果发生错误,则返回 Error 对象。 更多详情 | ListItem | |
Boolean | 如果为 | ListItem | |
Layer | 与触发操作相关联的图层。 更多详情 | ListItem | |
LayerView | 更多详情 | ListItem | |
Boolean | 图层是否在 LayerList 中打开。 更多详情 | ListItem | |
ListItemPanel | 允许您在 LayerList 微件中显示每个 ListItem 的自定义内容。 更多详情 | ListItem | |
ListItem | 此项目的父项 更多详情 | ListItem | |
Boolean | 发布图层时,值为 | ListItem | |
Boolean | 指示是否可以排序或移动/重新排序列表项目 (或地图中的图层)。 更多详情 | ListItem | |
String | 图层的标题。 更多详情 | ListItem | |
Boolean | 更新图层时,值为 | ListItem | |
MapView|SceneView | 微件将从中操作的视图。 更多详情 | ListItem | |
String | 指示如何管理子图层的可见性。 更多详情 | ListItem | |
Boolean | 指示 ListItem 是否可见。 更多详情 | ListItem | |
Boolean | 图层在当前比例下是否可见。 更多详情 | ListItem |
属性详细信息
-
actionsOpen Boolean
-
操作面板是否在 LayerList 中打开。
- 默认值:false
-
actionsSections Collection<Collection<(ActionButton|ActionToggle)>>autocast
-
可以在项目上触发的嵌套二维操作集合。
-
children Collection<ListItem>
-
当图层包含子图层时,此属性是属于给定图层的 ListItem 对象的集合。
-
childrenSortable Boolean起始版本:GeoScene Maps SDK for JavaScript 4.16
-
指示是否可以排序或移动/重新排序列表项目的子项 (或 GroupLayer 中的子图层)。
- 默认值:true
示例// disables the children of a parent list item from being sorted listItem.childrenSortable = false;
-
connectionStatus Stringreadonly起始版本:GeoScene Maps SDK for JavaScript 4.24
-
仅当列表项目表示 StreamLayer 时有效。指示流图层连接的状态。这将覆盖 updating 属性。连接流图层后,列表项目标题旁边将出现一个绿色圆圈。当其为
disconnected
后,列表项目标题旁边将显示一个空心的红色环。可能值:"connected"|"disconnected"
-
起始版本:GeoScene Maps SDK for JavaScript 4.7
-
类的名称。声明的类名称格式化为
geoscene.folder.className
。
-
error Errorreadonly
-
如果发生错误,则返回 Error 对象。
-
起始版本:GeoScene Maps SDK for JavaScript 4.24
-
如果为
true
,则从 LayerList 实例中隐藏图层。这是 Layer.listMode 的替代方案,它从包含图层的所有 LayerList 实例中隐藏图层。- 默认值:false
示例let layerList1 = new LayerList({ view, container: layerList1Container, listItemCreatedFunction: (event) => { // hides the USA - Highway layer from the // layerList1 instance of layerlist if(event.item.title === "USA - Highways") { event.item.hidden = true; } } });
-
layer Layer
-
与触发操作相关联的图层。
- 默认值:null
-
layerView LayerViewreadonly
-
-
open Boolean
-
图层是否在 LayerList 中打开。
- 默认值:false
-
panel ListItemPanel起始版本:GeoScene Maps SDK for JavaScript 4.7
-
允许您在 LayerList 微件中显示每个 ListItem 的自定义内容。
使用 ListItemPanel 的常见场景是在每个列表项中显示 Legend 微件。
legend
关键字可用于面板的 content 属性,以显示 LayerList 中每个图层的图例。示例// displays the legend for each layer list item const layerList = new LayerList({ view: view, listItemCreatedFunction: function(event){ const item = event.item; item.panel = { content: "legend" }; } });
// displays content from the DOM in the LayerList const layerList = new LayerList({ view: view, listItemCreatedFunction: function(event){ const item = event.item; item.panel = { content: document.getElementById("myDiv"), className: "geoscene-icon-chart", open: item.visible }; } });
-
parent ListItem起始版本:GeoScene Maps SDK for JavaScript 4.5
-
此项目的父项
- 默认值:null
-
publishing Booleanreadonly起始版本:GeoScene Maps SDK for JavaScript 4.25
-
发布图层时,值为
true
。如果未发布图层或 checkPublishStatusEnabled 为false
,则值将为false
。- 默认值:false
-
sortable Boolean起始版本:GeoScene Maps SDK for JavaScript 4.16
-
指示是否可以排序或移动/重新排序列表项目 (或地图中的图层)。
- 默认值:true
示例// disables the list item from being sorted listItem.sortable = false;
-
title String
-
图层的标题。
-
updating Booleanreadonly
-
更新图层时,值为
true
;例如,如果它正在获取数据。- 默认值:false
-
微件将从中操作的视图。
-
visibilityMode Stringreadonly
-
指示如何管理子图层的可见性。
-
visible Boolean
-
指示 ListItem 是否可见。
- 默认值:true
-
visibleAtCurrentScale Booleanreadonly
-
图层在当前比例下是否可见。
- 默认值:true
方法概述
名称 | 返回值类值 | 描述 | 类 |
---|---|---|---|
添加一个或多个与对象的生命周期相关联的句柄。 更多详情 | Accessor | ||
ListItem | 创建此对象的深度克隆。 更多详情 | ListItem | |
Boolean | 如果存在指定的句柄组,则返回 true。 更多详情 | Accessor | |
移除对象拥有的句柄组。 更多详情 | Accessor |
方法详细说明
-
addHandles(handleOrHandles, groupKey)inherited起始版本:GeoScene Maps SDK for JavaScript 4.25
-
添加一个或多个与对象的生命周期相关联的句柄。当对象被销毁时,将移除句柄。
// Manually manage handles const handle = reactiveUtils.when( () => !view.updating, () => { wkidSelect.disabled = false; }, { once: true } ); // Handle gets removed when the object is destroyed. this.addHandles(handle);
参数handleOrHandles WatchHandle|WatchHandle[]对象销毁后,标记为要移除的句柄。
groupKey *optional标识句柄应添加到的组的键。组中的所有句柄稍后都可使用 Accessor.removeHandles() 进行删除。如果未提供键,则句柄将被添加到默认组。
-
起始版本:GeoScene Maps SDK for JavaScript 4.25
-
如果存在指定的句柄组,则返回 true。
参数groupKey *optional组键。
返回类型 描述 Boolean 如果存在指定的句柄组,则返回 true
。示例// Remove a named group of handles if they exist. if (obj.hasHandles("watch-view-updates")) { obj.removeHandles("watch-view-updates"); }
-
removeHandles(groupKey)inherited起始版本:GeoScene Maps SDK for JavaScript 4.25
-
移除对象拥有的句柄组。
参数groupKey *optional要移除的组键或组键的数组或集合。
示例obj.removeHandles(); // removes handles from default group obj.removeHandles("handle-group"); obj.removeHandles("other-handle-group");