// Create the relationship element
const relationshipElement = new RelationshipElement({
description: "Past and present building owners",
displayCount: 5,
label: "Building owners",
orderByFields: [{ //autocastable to RelatedRecordsInfoFieldOrder
field: "owner_name",
order: "desc"
}],
relationshipId: 0
});
构造函数
属性概述
名称 | 类型 | 描述 | 类 |
---|---|---|---|
String | 类的名称。 更多详情 | Accessor | |
String | 元素的描述提供了其背后的目的。 更多详情 | Element | |
Number | 一个数字值,指示要在相关记录列表中显示的相关要素的最大数量。 更多详情 | RelationshipElement | |
String | 一个字符串值,指示如何显示关系内容中的相关记录。 更多详情 | RelationshipElement | |
String | 对在 FormTemplate 的 expressionInfos 中定义的 Arcade 表达式的名称的引用。 更多详情 | RelationshipElement | |
String | 包含字段别名的字符串值。 更多详情 | Element | |
RelatedRecordsInfoFieldOrder[] | RelatedRecordsInfoFieldOrder 对象的数组,指示相关记录的字段显示顺序以及这些记录应按升序 | RelationshipElement | |
Number | 已定义关系的数字 id 值。 更多详情 | RelationshipElement | |
String | 指示表单元素的类型。 更多详情 | RelationshipElement | |
String | 对在 FormTemplate 的 expressionInfos 中定义的 Arcade 表达式的名称的引用。 更多详情 | Element |
属性详细信息
-
类的名称。声明的类名称格式化为
geoscene.folder.className
。
-
元素的描述提供了其背后的目的。
-
displayCount Number
-
一个数字值,指示要在相关记录列表中显示的相关要素的最大数量。如果未指定值,则
Show all
按钮可用于显示所有相关记录,并且关联的 FeatureForm/RelationshipInput 默认为 3。如果要素总量大于displayCount
,则会显示Show all
按钮。- 默认值:3
-
displayType String
-
一个字符串值,指示如何显示关系内容中的相关记录。目前,
list
是唯一支持的值。值 描述 list 显示指定关系的相关记录列表。 对于 RelationshipElement,displayType 总是 "list"。
- 默认值:list
-
editableExpression String
-
对在 FormTemplate 的 expressionInfos 中定义的 Arcade 表达式的名称的引用。表达式必须遵循表单约束配置文件中定义的规范。表达式可以使用
$feature
全局输入来引用字段值,并且必须返回true
或false
。当此表达式的计算结果为
true
时,可以编辑字段值,如果为false
,则反之亦然。如果引用的相关表不可编辑,则可编辑表达式将被忽略且元素不可编辑。引用的表达式必须在表单模板的 expressionInfos 中进行定义。不能在元素对象内以内联方式设置它。
- 另请参阅
-
包含字段别名的字符串值。这不是 Arcade 表达式,而是使用标题。
-
orderByFields RelatedRecordsInfoFieldOrder[]autocast
-
RelatedRecordsInfoFieldOrder 对象的数组,指示相关记录的字段显示顺序以及这些记录应按升序
asc
还是降序desc
排序。
-
relationshipId Numberreadonly
-
已定义关系的数字 id 值。如果
supportsRelationshipResource
为true
,则可在服务本身或服务的关系资源上找到该值。
-
type Stringreadonly
-
指示表单元素的类型。RelationshipElement 的类型为
relationship
。对于 RelationshipElement,类型总是 "relationship”。
-
对在 FormTemplate 的 expressionInfos 中定义的 Arcade 表达式的名称的引用。表达式必须遵循表单约束配置文件定义的规范。表达式可以使用
$feature
配置变量来引用字段值,并且必须返回true
或false
。当此表达式的计算结果为
true
时,将显示该元素。当表达式的计算结果为false
时,不显示该元素。如果未提供表达式,则始终显示该元素。在定义非空字段的可见性表达式时必须小心,即,确保此类字段具有默认值或对用户可见,以便他们可以在提交表单之前提供值。引用的表达式必须在表单模板的 expressionInfos 中进行定义。不能在元素对象内以内联方式设置它。
示例// Expression created within ExpressionInfos and is referenced in element const expression = new ExpressionInfo({ name: "alwaysHidden", expression: "false" }); // Reference an already-defined visibilityExpression set within the ExpressionInfos const fieldElement = new FieldElement({ type: "field", fieldName: "inspemail", label: "Email address", visibilityExpression: "alwaysHidden" }); formTemplate.expressionInfos = [ expression ]; formTemplate.elements = [ fieldElement ];
方法概述
名称 | 返回值类值 | 描述 | 类 |
---|---|---|---|
添加一个或多个与对象生命周期相关联的句柄 更多详情 | Accessor | ||
RelationshipElement | 创建 RelationshipElement 类的深度克隆。 更多详情 | RelationshipElement | |
* | 创建此类的新实例并使用从 GeoScene 产品生成的 JSON 对象值对其进行初始化。 更多详情 | Element | |
Boolean | 如果存在指定的句柄组,则返回 true。 更多详情 | Accessor | |
移除对象拥有的句柄组。 更多详情 | Accessor | ||
Object | 将此类的实例转换为其 GeoScene Portal JSON 表示。 更多详情 | Element |
方法详细说明
-
addHandles(handleOrHandles, groupKey)inherited
-
添加一个或多个与对象的生命周期相关联的句柄。当对象被销毁时,将移除句柄。
// Manually manage handles const handle = reactiveUtils.when( () => !view.updating, () => { wkidSelect.disabled = false; }, { once: true } ); this.addHandles(handle); // Destroy the object this.destroy();
参数handleOrHandles WatchHandle|WatchHandle[]对象销毁后,标记为要移除的句柄。
groupKey *optional标识句柄应添加到的组的键。组中的所有句柄稍后都可使用 Accessor.removeHandles() 进行删除。如果未提供键,则句柄将被添加到默认组。
-
clone(){RelationshipElement}
-
创建 RelationshipElement 类的深度克隆。
返回类型 描述 RelationshipElement RelationshipElement 实例的深度克隆。
-
fromJSON(json){*}static
-
创建此类的新实例并使用从 GeoScene 产品生成的 JSON 对象值对其进行初始化。传入到输入
json
参数的对象通常来自对 REST API 中查询操作的响应或来自另一个 GeoScene 产品的 toJSON() 方法。参数json ObjectGeoScene 格式实例的 JSON 表示。
返回类型 描述 * 返回该类的新实例。
-
如果存在指定的句柄组,则返回 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
-
移除对象拥有的句柄组。
参数groupKey *optional要移除的组键或组键的数组或集合。
示例obj.removeHandles(); // removes handles from default group obj.removeHandles("handle-group"); obj.removeHandles("other-handle-group");
-
将此类的实例转换为其 GeoScene Portal JSON 表示。有关详细信息,请参阅使用 fromJSON() 指南主题。
返回类型 描述 Object 此类实例的 GeoScene Portal JSON 表示。