ColumnTemplate

AMD: require(["geoscene/widgets/FeatureTable/support/ColumnTemplate"], (ColumnTemplate) => { /* code goes here */ });
ESM: import ColumnTemplate from "@geoscene/core/widgets/FeatureTable/support/ColumnTemplate";
类: geoscene/widgets/FeatureTable/support/ColumnTemplate
继承于:ColumnTemplate ColumnTemplateBase Accessor
起始版本:GeoScene Maps SDK for JavaScript 4.24

ColumnTemplate 可格式化并定义 FeatureTable 微件中 Column 的结构。

FieldColumnTemplate 直接在表的 template 或其视图模型上进行设置。FeatureTable 的 tableTemplate 包含列、字段和/或组模板的集合。

另请参阅

构造函数

new ColumnTemplate(properties)
参数
properties Object
optional

有关可能传递给构造函数的所有属性的列表,请参见属性

属性概述

可以设置、检索或侦听任何属性。请参阅使用属性主题。
显示继承属性 隐藏继承属性
名称 类型 描述
String

类的名称。

更多详情
Accessor
String|null

控制列的排序顺序。

更多详情
ColumnTemplateBase
Boolean

指示字段是否可编辑。

更多详情
ColumnTemplate
Number

将其与 FeatureTable.multiSortEnabled 和 FeatureTable.direction 属性结合使用,以设置对多个列的排序功能。

更多详情
ColumnTemplateBase
String

包含列别名的字符串值。

更多详情
ColumnTemplateBase
ButtonMenuConfig

设置此对象可自定义列的菜单内容。

更多详情
ColumnTemplateBase
Boolean

指示字段是否需要值。

更多详情
ColumnTemplate
Boolean

指示是否可以对字段列进行排序。

更多详情
ColumnTemplateBase
String

水平对齐列单元格内容。

更多详情
ColumnTemplateBase
String

模板表示的列的“类型”。

更多详情
ColumnTemplate
Boolean

指示列是否可见。

更多详情
ColumnTemplateBase

属性详细信息

declaredClass Stringreadonly inherited

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

控制列的排序顺序。此属性将仅在 FeatureTable 微件中的一上使用。如果在同一 FeatureTable 中的多个 fieldColumn 上指定了方向,则仅会在最大索引的列上执行。例如,假设名为 ObjectId 的第一个列设置为 asc,而表顺序后面的另一列也具有设置方向,则对于具有设置方向的最后一列,初始 ObjectId 列的方向将被忽略。

将其与 FieldColumnTemplate.initialSortPriorityFeatureTable.multiSortEnabled 属性结合使用,以设置对多个列的排序功能。

可能值 描述
asc 按升序对列进行排序。
desc 按降序对列进行排序。
null 不会对列应用任何排序。

可能值"asc"|"desc"

默认值:null
另请参阅
editable Boolean

指示字段是否可编辑。编辑权限可以按以下优先级进行细分:

  1. Field - 这派生自 FeatureLayerSceneLayer。它采用在 Field.editable 属性中设置的内容。要启用编辑,这必须始终为 true。可以使用字段列模板来覆盖此内容。
  2. Template - 可以通过设置 FieldColumnTemplateeditable 属性来配置字段的可编辑权限。
  3. FeatureTable - 必须在表上设置 editingEnabled 属性,才能启用任何类型的编辑。

例如,如果在微件中禁用了表编辑,即不设置 enableEditing,仍可通过设置 editable 属性来启用对特定列的编辑。反之亦然,如果启用了表编辑,则可使用字段模板来禁用对特定列的编辑。

最终,如果服务的字段不可编辑,则无法使用上述选项之一覆盖其权限。

另请参阅
initialSortPriority Number inherited

将其与 FeatureTable.multiSortEnabled 和 FeatureTable.direction 属性结合使用,以设置对多个列的排序功能。与其他列相比,此属性指示排序列的索引,数字越小,优先级越高。

如果未设置排序优先级,则优先级默认为最近排序的列。在通过 UI 进行排序时,或通过调用 FeatureTable.sortColumn 以编程方式排序时,会发生这种情况。例如,使用下面的示例代码段,针对三列设置了排序优先级,其中 "Status” 具有最小优先级。调用 table.sortColumn("Status", "asc") 会将 Status 列更新为最高优先级。如果通过列 UI 手动排序,也会发生这种情况。

默认值:null
另请参阅
示例
const table = new FeatureTable({
  layer: featureLayer,
  multiSortEnabled: true,
  tableTemplate: { // autocastable to TableTemplate
    columnTemplates: [{ // autocastable to FieldColumnTemplate
      fieldName: "ObjectId",
      direction: "asc",
      initialSortPriority: 1, // This field's sort order takes second-highest priority.
    },
    {
      fieldName: "Name",
      direction: "asc",
      initialSortPriority: 0, // This field's sort order takes the highest priority.
    },
    {
      fieldName: "Status",
      direction: "asc",
      initialSortPriority: 2 // This field's sort order is prioritized after Name and ObjectId, respectively.
    }]
  }
  container: "tableDiv"
});

包含列别名的字符串值。

设置此对象可自定义列的菜单内容。

另请参阅
required Boolean

指示字段是否需要值。

默认值:false

指示是否可以对字段列进行排序。

默认值:true
textAlign String inherited

水平对齐列单元格内容。支持的值:"start" | "center" | "end".

可能值"start"|"center"|"end"

默认值:start
type Stringreadonly

模板表示的列的“类型”。

对于 ColumnTemplate,类型总是 "column"

指示列是否可见。

默认值:true

方法概述

显示继承的方法 隐藏继承的方法
名称 返回值类值 描述

添加一个或多个与对象的生命周期相关联的句柄。

更多详情
Accessor
*

创建此类的新实例并使用从 GeoScene 产品生成的 JSON 对象值对其进行初始化。

更多详情
ColumnTemplateBase
Boolean

如果存在指定的句柄组,则返回 true。

更多详情
Accessor

移除对象拥有的句柄组。

更多详情
Accessor
Object

将此类的实例转换为 GeoScene Portal JSON 表示。

更多详情
ColumnTemplateBase

方法详细说明

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() 进行删除。如果未提供键,则句柄将被添加到默认组。

fromJSON(json){*}static

创建此类的新实例并使用从 GeoScene 产品生成的 JSON 对象值对其进行初始化。传入到输入 json 参数的对象通常来自对 REST API 中查询操作的响应或来自另一个 GeoScene 产品的 toJSON() 方法。有关何时以及如何使用该函数的详细信息和示例,请参阅指南中的使用 fromJSON() 主题。

参数
json Object

GeoScene 格式实例的 JSON 表示。有关各种输入 JSON 对象的结构示例,请参阅 GeoScene REST API 文档

返回
类型 描述
* 返回该类的新实例。
hasHandles(groupKey){Boolean}inherited
起始版本: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");
toJSON(){Object}inherited

将此类的实例转换为 GeoScene Portal JSON 表示。有关详细信息,请参阅使用 fromJSON() 指南主题。

返回
类型 描述
Object 此类实例的 GeoScene Portal JSON 表示。

您的浏览器不再受支持。请升级您的浏览器以获得最佳体验。请参阅浏览器弃用帖子以获取更多信息