此类定义了用于对来自图层的相关记录执行查询的参数。一旦定义了 RelationshipQuery 对象的属性,就可将其传递给 query.executeRelationshipQuery() 和 FeatureLayer.queryRelatedFeatures() 方法,这些方法将按源图层/表 objectIds 返回分组的 FeatureSets。
- 另请参阅
构造函数
属性概述
名称 | 类型 | 描述 | 类 |
---|---|---|---|
Boolean | 指示服务是否应缓存关系查询结果。 更多详情 | RelationshipQuery | |
String | 类的名称。 更多详情 | Accessor | |
String | 指定待查询的地理数据库版本。 更多详情 | RelationshipQuery | |
Number | 指定查询操作返回的几何中的小数位数。 更多详情 | RelationshipQuery | |
Date | 要查询的历史时刻。 更多详情 | RelationshipQuery | |
Number | 用于概化查询操作返回的几何的最大允许偏移量。 更多详情 | RelationshipQuery | |
Number | 要检索的要素数。 更多详情 | RelationshipQuery | |
Number[] | 正在查询的图层/表中的要素的 objectIds 数组。 更多详情 | RelationshipQuery | |
String[] | 用于对查询结果进行排序的一个或多个字段名称。 更多详情 | RelationshipQuery | |
String[] | 要包含在 FeatureSet 中的属性字段。 更多详情 | RelationshipQuery | |
SpatialReference | 返回几何的空间参考。 更多详情 | RelationshipQuery | |
Number | 要查询的关系的 ID。 更多详情 | RelationshipQuery | |
Boolean | 如果为 | RelationshipQuery | |
Boolean | 如果为 | RelationshipQuery | |
Boolean | 如果为 | RelationshipQuery | |
Number | 从零开始的索引,指示从何处开始检索要素。 更多详情 | RelationshipQuery | |
String | 要应用于相关表或图层的定义表达式。 更多详情 | RelationshipQuery |
属性详细信息
-
cacheHint Boolean起始版本:GeoScene Maps SDK for JavaScript 4.24
-
指示服务是否应缓存关系查询结果。它仅适用于图层的 capabilities.queryRelated.supportsCacheHint 设置为
true
时。仅用于每次使用应用程序时具有相同参数的查询。可缓存查询的一些示例:- 默认值:undefined
-
类的名称。声明的类名称格式化为
geoscene.folder.className
。
-
gdbVersion String
-
指定待查询的地理数据库版本。
-
geometryPrecision Number
-
指定查询操作返回的几何中的小数位数。
-
historicMoment Date
-
要查询的历史时刻。仅当图层的 FeatureLayer 属性上的
supportsHistoricMoment
设置为true
时,此参数才适用。
-
maxAllowableOffset Number
-
用于概化查询操作返回的几何的最大允许偏移量。偏移使用
outSpatialReference
的单位。如果未定义outSpatialReference
,则使用视图的 spatialReference。
-
num Number
-
要检索的要素数。此选项应与 start 属性结合使用。可使用它来实现分页 (即,在查询时检索结果的 "页面")。
如果未提供,但 Query 实例具有
start
属性,则默认num
值为 10。如果未提供num
或start
属性,则默认值num
等于服务的maxRecordCount
,该值可在 FeatureLayer 的 REST 端点中找到。
-
正在查询的图层/表中的要素的 objectIds 数组。
-
用于对查询结果进行排序的一个或多个字段名称。在字段名称后指定
ASC
(升序) 或DESC
(降序) 以控制顺序。默认顺序是ASC
。已知限制
- 如果查询 MapImageLayer,则
supportsAdvancedQueries
在服务上必须为true
。 - 对于 FeatureLayer,
FeatureLayer.capabilities.queryRelated.supportsOrderBy
必须为true
。
示例query.orderByFields = ["STATE_NAME DESC"];
- 如果查询 MapImageLayer,则
-
要包含在 FeatureSet 中的属性字段。字段必须存在于地图图层中。您必须列出实际的字段名称而不是别名。但是,您可在显示结果时使用别名。
指定输出字段时,应将字段限制为仅希望在查询或结果中使用的字段。包含的字段越少,响应速度就越快。
每个查询都必须有权访问图层的 Shape 和 ObjectId 字段。但是,字段列表不需要包括这两个字段。
示例query.outFields = [ "NAME", "STATE_ABBR", "POP04" ];
-
outSpatialReference SpatialReferenceautocast
-
返回几何的空间参考。如果未定义
outSpatialReference
,则使用视图的 spatialReference。
-
relationshipId Number
-
要查询的关系的 ID。表或图层参与的关系 id 列在 GeoScene 服务目录中。要查询的关系的 ID。该图层/表参与的关系包含在要素服务图层资源响应中。将查询与关系的相关表/图层相对应的表/图层中的记录。
-
returnGeometry Boolean
-
如果为
true
,则 FeatureSet 中的每个要素都包含几何。如果不打算在地图上包括突出显示的要素,则设置为false
(默认值),因为几何构成了响应的重要部分。- 默认值:false
-
returnM Boolean
-
如果为
true
,且 returnGeometry 也为true
,则 m 值包含在几何中。
-
returnZ Boolean
-
如果为
true
,且 returnGeometry 也为true
,则 z 值包含在几何中。
方法概述
名称 | 返回值类值 | 描述 | 类 |
---|---|---|---|
添加一个或多个与对象的生命周期相关联的句柄。 更多详情 | Accessor | ||
RelationshipQuery | 创建 RelationshipQuery 对象的深度克隆。 更多详情 | RelationshipQuery | |
* | 创建此类的新实例并使用从 GeoScene 产品生成的 JSON 对象值对其进行初始化。 更多详情 | RelationshipQuery | |
Boolean | 如果存在指定的句柄组,则返回 true。 更多详情 | Accessor | |
移除对象拥有的句柄组。 更多详情 | Accessor | ||
Object | 将此类的实例转换为 GeoScene Portal JSON 表示。 更多详情 | RelationshipQuery |
方法详细说明
-
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() 进行删除。如果未提供键,则句柄将被添加到默认组。
-
clone(){RelationshipQuery}
-
创建 RelationshipQuery 对象的深度克隆。
返回类型 描述 RelationshipQuery RelationshipQuery 对象的新实例,其等于用于调用 .clone()
的对象。
-
fromJSON(json){*}static
-
创建此类的新实例并使用从 GeoScene 产品生成的 JSON 对象值对其进行初始化。传入到输入
json
参数的对象通常来自对 REST API 中查询操作的响应或来自另一个 GeoScene 产品的 toJSON() 方法。有关何时以及如何使用该函数的详细信息和示例,请参阅指南中的使用 fromJSON() 主题。参数json ObjectGeoScene 格式实例的 JSON 表示。有关各种输入 JSON 对象的结构示例,请参阅 GeoScene REST API 文档。
返回类型 描述 * 返回该类的新实例。
-
起始版本: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}
-
将此类的实例转换为 GeoScene Portal JSON 表示。有关详细信息,请参阅使用 fromJSON() 指南主题。
返回类型 描述 Object 此类实例的 GeoScene Portal JSON 表示。