TableListViewModel

AMD: require(["geoscene/widgets/TableList/TableListViewModel"], (TableListVM) => { /* 代码 */ });
ESM: import TableListVM from "@geoscene/core/widgets/TableList/TableListViewModel";
Object: geoscene/widgets/TableList/TableListViewModel
起始版本: GeoScene API for JavaScript 4.22
示例:
示例代码:
const tableList = new TableList({
  viewModel: { // 转换成 new TableListViewModel
    map: map // specify the map containing the tables
  }
});

属性列表

属性 类型 描述 Object
ListItemCreatedHandler更多信息

指定访问每个 ListItem 的函数。

更多信息TableListViewModel
Map|WebMap更多信息

对包含表格的地图的引用。

更多信息TableListViewModel
String更多信息

视图模型的状态。

更多信息TableListViewModel
Collection<ListItem>更多信息

微件中显示的表 ListItem 的集合。

更多信息TableListViewModel

属性详细说明

listItemCreatedFunction ListItemCreatedHandler

指定访问每个 ListItem 的函数。 每个列表项都可以根据其可修改的属性进行修改。 可以使用 ListItem 的 actionsSections 属性将操作添加到列表项

map Map|WebMap

对包含表格的地图的引用。设置此属性以访问地图中的基础表。

示例:
示例代码:
// FeatureLayer.isTable = true.
Layer.fromPortalItem({
  // Loads a layer (table) from a portal item
  portalItem: { // autocasts new PortalItem()
    id: "add portal id item"
  }
}).then(function(layer) {
  // Load the layer
  layer.load().then(function() {
    // Check if the layer is a table
    if (layer.isTable) {
      map.tables.add(layer);
      console.log(map.tables);
    }
  });
});

 const tableList = new TableList({
   map: map // map contains tables collection
 });
state Stringreadonly

视图模型的状态。

可选值:"loading"|"ready"|"disabled"

默认值:disabled
tableItems Collection<ListItem>readonly

微件中显示的表 ListItem 的集合。

类型定义

ListItemCreatedHandler(event)

listItemCreatedFunction 属性的函数定义。

参数:
event Object

包含由 TableList 创建的列表项的对象。

规范:
item ListItem

由 TableListViewModel 创建的列表项。您可以修改此项的属性以自定义列表项的文本、操作和可见性。有关详细信息,请参阅 listItemCreatedFunction 的文档。

事件概览

属性 类型 描述 Object
{action: ActionButton,ActionToggle,item: ListItem}
更多信息

在用户单击 TableList 微件内的操作操作切换后触发。

更多信息 TableListViewModel

事件详情

trigger-action

在用户单击 TableList 微件内的操作操作切换后触发。此事件可用于定义单击特定操作时要执行的自定义函数。

属性:

用户单击的操作。

item ListItem

与操作关联的项目。

示例代码:
tableList.viewModel.on("trigger-action", function (event) {
  let item = event.item;
  // Capture the action id.
  let id = event.action.id;

  if (id === "information") {
    window.open(item.layer.url);
  }
});

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