用于在 FeatureTable 微件中显示单个字段的配置选项。
以下是在字段配置中启用/禁用编辑时要考虑的一些事项。
编辑权限可以按以下优先级细分:
- Field - 这派生自 FeatureLayer 或 SceneLayer。它采用在 Field.editable 属性中设置的内容。要启用编辑,必须始终为
true
。可以使用段列配置字覆盖此内容。 - Config - 可以通过设置 FieldColumnConfig 的可编辑属性来配置字段的可编辑权限。
- FeatureTable - 必须在表上设置 editingEnabled 属性,才能启用任何类型的编辑。
例如,如果在微件中禁用了表编辑,即不设置 enableEditing
,仍可以通过设置可编辑属性来启用对特定列的编辑。反之亦然,如果启用了表编辑,则可以使用字段配置来禁用对特定列的编辑。
如果服务的字段不可编辑,则无法使用上述选项之一覆盖其权限。
- 另请参阅:
// Shows how field column configs can be set to control editing
// within a table
const table = new FeatureTable({
editingEnabled: true, //enables editing on the entire table (if service allows it)
layer: featureLayer,
container: document.getElementById("table"),
fieldConfigs: [{ // autocasts to FieldColumnConfig
name: "NAME",
label: name,
direction: "asc",
},
{
name: "ADDRESS",
label: address,
editable: false, // disables editing for the ADDRESS field
required: true
}]
});
构造函数
-
new FieldColumnConfig(properties)
-
参数:properties Objectoptional
有关可能传递到构造函数中的所有属性的列表,请参阅属性。
示例:// Typical usage for FieldColumnConfig. const fieldConfig1 = new FieldColumnConfig({ name: "FID", label: "ID", // This field will not be initially shown within the table visible: false }); const fieldConfig2 = new FieldColumnConfig({ name: "NAME", label: "School Name", // The table will be sorted by this column // in ascending order direction: "asc" }); // Apply field configs to feature table const featureTable = new FeatureTable({ layer: featureLayer, fieldConfigs: [fieldConfig1, fieldConfig2], container: "tableDiv" });
属性概述
名称 | 类型 | 描述 | 类: | |
---|---|---|---|---|
String | 更多详情 类的名称。 | 更多详情 | Accessor | |
String | 更多详情 字段的说明。 | 更多详情 | FieldConfig | |
String|null | 更多详情 控制列的排序顺序。 | 更多详情 | FieldColumnConfig | |
Boolean | 更多详情 指示是否可以编辑字段。 | 更多详情 | FieldConfig | |
Boolean | 更多详情 指示日期字段是否应显示编辑时间的输入。 | 更多详情 | FieldConfig | |
Number | 更多详情 将其与 FeatureTable.multiSortEnabled 和 FeatureTable.direction 属性结合使用,以设置对多个列的排序功能。 | 更多详情 | FieldColumnConfig | |
String | 更多详情 字段的标注。 | 更多详情 | FieldConfig | |
Number | 更多详情 限制输入长度。 | 更多详情 | FieldConfig | |
ButtonMenuConfig | 更多详情 设置此对象可自定义字段列的菜单内容。 | 更多详情 | FieldColumnConfig | |
Number | 更多详情 限制输入长度。 | 更多详情 | FieldConfig | |
String | 更多详情 字段名称。 | 更多详情 | FieldConfig | |
Boolean | 更多详情 指示该字段是否为必填字段。 | 更多详情 | FieldConfig | |
String | 更多详情 对在 FeatureForm 的 expressionInfos 中定义的 Arcade 表达式的名称的引用。 | 更多详情 | FieldConfig | |
Boolean | 更多详情 指示是否可以对字段列进行排序。 | 更多详情 | FieldColumnConfig | |
String | 更多详情 水平对齐列单元格内容。 | 更多详情 | textAlign | |
Boolean | 更多详情 指示字段列是否可见。 | 更多详情 | FieldColumnConfig |
属性详细信息
-
类的名称。声明的类名格式为
geoscene.folder.className
。
-
字段的说明。说明显示在字段下方。
-
控制列的排序顺序。此属性将仅在 FeatureTable 微件的一列上得到支持。如果在同一 FeatureTable 中的多个 fieldColumn 上指定了方向,则只会在具有最高索引的列上遵循该方向。例如,假设第一列被调用
ObjectId
设置为asc
,而表顺序中后面的另一列也具有设置方向,对于具有设置方向的最后一列,初始ObjectId
列的方向将被忽略。可能值 说明 asc 按升序对列进行排序。 desc 按降序对列进行排序。按升序对列进行排序。 null 不会对列应用任何排序。 可能的值:"asc"|"desc"
-
指示是否可以编辑字段。
这不会更改基础服务的字段以及是否可以对其进行编辑。
- 默认值:true
-
起始版本:GeoScene API for JavaScript 4.17
-
指示日期字段是否应显示编辑时间的输入。
- 默认值:true
-
initialSortPriority Number起始版本:GeoScene API for JavaScript 4.23
-
将其与 FeatureTable.multiSortEnabled 和 FeatureTable.direction 属性结合使用,以设置对多个列的排序功能。与其他列相比,此属性指示排序列的索引,数字越小,优先级越高。
如果未设置排序优先级,则优先级默认为最近排序的列。在通过 UI 进行排序时,或通过调用 FeatureTable.sortColumn 以编程方式排序时,会发生这种情况。例如,使用下面的示例代码段,为三列设置排序顺序优先级,其中“状态”具有最小优先级。调用
table.sortColumn("Status", "asc")
会将Status
列更新为最高优先级。如果通过列的 UI 手动排序,也会发生这种情况。- 默认值:null
- 另请参阅:
示例:const table = new FeatureTable({ layer: featureLayer, multiSortEnabled: true, fieldConfigs: [{ // autocasts to FieldColumnConfig name: "ObjectId", direction: "asc", initialSortPriority: 1, // This field's sort order takes second-highest priority. }, { name: "Name", direction: "asc", initialSortPriority: 0, // This field's sort order takes the highest priority. }, { name: "Status", direction: "asc", initialSortPriority: 2 // This field's sort order is prioritized after Name and ObjectId, respectively. }], container: "tableDiv" });
-
字段的标注。标注显示在字段上方。
-
限制输入长度。
这仅适用于
numeric
和text
字段类型。- 默认值:-1
-
起始版本:GeoScene API for JavaScript 4.16
-
设置此对象可自定义字段列的菜单内容。
-
起始版本:GeoScene API for JavaScript 4.16
-
限制输入长度。
这仅适用于
numeric
和text
字段类型。- 默认值:-1
-
字段名称。
-
指示该字段是否为必填字段。
这无法更改基础服务的字段要求。
- 默认值:false
-
起始版本:GeoScene API for JavaScript 4.16
-
对在 FeatureForm 的 expressionInfos 中定义的 Arcade 表达式的名称的引用。表达式必须约束 Arcade 配置文件定义的规范。表达式可以使用
$feature
全局变量引用字段值,并且必须返回true
或false
。当此表达式的计算结果为
true
且元素可见时,元素必须具有有效值才能创建或编辑要素。当表达式的计算结果为false
时,不需要元素。如果未提供表达式,则默认行为是不需要该元素。如果引用的字段不可为 null,则忽略所需的表达式,并且始终需要元素。- 另请参阅:
-
sortable Boolean起始版本:GeoScene API for JavaScript 4.16
-
指示是否可以对字段列进行排序。
- 默认值:true
-
textAlign Stringinner
-
水平对齐列单元格内容。支持的值:"start" | "center" | "end"。
可能的值:"start"|"center"|"end"
- 默认值:start
-
visible Boolean
-
指示字段列是否可见。
- 默认值:true