此类允许您为 LayerList 中的每个 ListItem 显示自定义内容微件。ListItemPanel 对象通常不被构造。相反,它们是使用 LayerList 中的 listItemCreatedFunction 属性修改的微件。
使用 ListItemPanel 的常见场景是在每个列表项中显示 Legend 微件。
const layerList = new LayerList({
view: view,
listItemCreatedFunction: function(event){
const item = event.item;
// displays the legend for each layer list item
item.panel = {
content: "legend"
};
}
});
属性列表
属性 | 类型 | 描述 | 类 | |
---|---|---|---|---|
String | 更多信息 添加一个 CSS 类,用于设置代表面板的节点的样式。 | 更多信息 | ListItemPanel | |
Widget|HTMLElement|String|Array | 更多信息 ListItem 面板中显示的内容。 | 更多信息 | ListItemPanel | |
String | 更多信息 用于表示面板的图像的 URL 或数据 URI。 | 更多信息 | ListItemPanel | |
ListItem | 更多信息 面板的父 ListItem 表示地图中的图层。 | 更多信息 | ListItemPanel | |
Boolean | 更多信息 指示面板的内容是否对用户打开和可见。 | 更多信息 | ListItemPanel | |
String | 更多信息 面板的标题。 | 更多信息 | ListItemPanel | |
Boolean | 更多信息 | 更多信息 | ListItemPanel |
属性详细说明
-
className String
-
添加一个 CSS 类,用于设置代表面板的节点的样式。单击节点将打开和关闭面板。通常,此属性使用图标字体。Esri 图标字体会自动变为可用并可用于表示此内容。要使用这些提供的图标字体之一,您必须在类名前加上
geoscene-
。例如,默认图标字体是geoscene-icon-layer-list
。- 默认值:geoscene-icon-layer-list
-
-
示例代码:
const layerList = new LayerList({ view: view, listItemCreatedFunction: function(event){ const item = event.item; // displays the legend for each layer list item item.panel = { content: "legend" }; } });
-
image String
-
用于表示面板的图像的 URL 或数据 URI。此属性将用作节点的背景图像。如果
image
和className
均未指定,则默认图标 将显示。
-
listItem ListItem
-
面板的父 ListItem 表示地图中的图层。
-
open Boolean
-
指示面板的内容是否对用户打开和可见。这与 visible 属性不同,后者用于切换图标的可见性,用于控制内容是展开还是折叠。
- 默认值:false
示例代码:const layerList = new LayerList({ view: view, listItemCreatedFunction: function(event){ const item = event.item; // displays the legend for each layer list item // The legend is open by default, but the user // is prevented from collapsing that content item.panel = { content: "legend", open: true, visible: false }; } });
-
title String
-
面板的标题。默认情况下,此标题与 ListItem 的标题相匹配。 更改此值不会更改 LayerList 中 ListItem 的标题。
-
visible Boolean
-
- 默认值:true
示例代码:const layerList = new LayerList({ view: view, listItemCreatedFunction: function(event){ const item = event.item; // displays the legend for each layer list item // The legend is open by default, but the user // is prevented from collapsing that content item.panel = { content: "legend", open: true, visible: false }; } });