LayerSearchSource

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

以下属性定义了一个基于 Layer,其要素可以通过 搜索 微件实例进行搜索。

对于 string 字段搜索,没有前导通配符。这可有效地使 exactMatchtrue,这将删除不必要的搜索结果和建议。

不支持从客户端图形创建的图层。

另请参阅

构造函数

new LayerSearchSource(properties)
参数
properties Object
optional

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

属性概述

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

指示选择后是否自动导航到所选结果。

更多详情
SearchSource
String

类的名称。

更多详情
Accessor
String

使用此字段显示结果。

更多详情
LayerSearchSource
Boolean

指示仅返回与搜索值完全匹配的结果。

更多详情
LayerSearchSource
Object

用于过滤建议或搜索结果。

更多详情
SearchSource
GetResultsHandler

用于获取搜索结果的函数。

更多详情
SearchSource
GetSuggestionsParameters

用于获取搜索建议的函数。

更多详情
SearchSource
Layer

搜索中查询的图层。

更多详情
LayerSearchSource
Number

指示要返回的最大搜索结果数。

更多详情
SearchSource
Number

指示为微件的输入返回的最大建议数。

更多详情
SearchSource
Number

指示查询建议之前所需的最少字符数。

更多详情
SearchSource
String

显示源的名称。

更多详情
LayerSearchSource
String[]

用于对查询结果进行排序的一个或多个字段名称。

更多详情
LayerSearchSource
String[]

指定与搜索结果一起返回的字段。

更多详情
SearchSource
String

用作源输入文本的提示。

更多详情
SearchSource
Boolean

指示单击选定结果时是否显示弹出窗口

更多详情
SearchSource
PopupTemplate

用于显示搜索结果的弹出模板。

更多详情
SearchSource
String

指定此项为用户输入的搜索文本添加前缀。

更多详情
SearchSource
Boolean

指示是否使用 resultSymbol 在地图上显示所选源的图形。

更多详情
SearchSource
Symbol

用于显示结果的符号。

更多详情
SearchSource
String[]

表示要素图层中要搜索的字段名称的字符串值数组。

更多详情
LayerSearchSource
String

模板字符串,用于在显示结果时以定义的顺序显示多个字段。

更多详情
LayerSearchSource
String

指定此项可为用户输入的搜索值添加后缀。

更多详情
SearchSource
Boolean

指示当用户在微件中输入输入文本时是否显示建议。

更多详情
SearchSource
String

模板字符串,用于在显示建议时以定义的顺序显示多个字段。

更多详情
LayerSearchSource
Boolean

指示是否将搜索结果限制在视图的范围内。

更多详情
SearchSource
Number

生成搜索结果的设置缩放比例。

更多详情
SearchSource

属性详细信息

autoNavigate Boolean inherited

指示选择后是否自动导航到所选结果。

默认值:true
declaredClass Stringreadonly inherited

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

displayField String

使用此字段显示结果。默认为图层的 displayField 或第一个字符串字段。

exactMatch Boolean

指示仅返回与搜索值完全匹配的结果。此属性仅适用于 string 字段搜索。在搜索 number 类型的字段时,exactMatch 始终为 true

默认值:false

用于过滤建议或搜索结果。在此处设置值优先于 withinViewEnabled。有关详细信息,请参阅下面的对象规格表。

属性
where String
optional

为过滤建议或搜索结果指定的 where 子句。

geometry Geometry
optional

建议或搜索结果的过滤器几何。Extent 是使用 locator 源时唯一支持的几何图形。

示例
const theExtent = new Extent({
  xmin: 11376463,
  ymin: -5163501,
  xmax: 18890529,
  ymax: -662888,
  spatialReference: {
    wkid: 3857
  }
});

const searchExtent = {
  geometry: theExtent,
  where: "TERRITORY = 'Northern Territory'"
};

const sources = [{
  layer: featureLayerTourism,
  placeholder: "Darwin",
  maxResults: 5,
  searchFields: ["POI"],
  displayField: "POI",
  name: "In a Sunburned Country",
  filter: searchExtent
}];

const searchWidget = new Search({
  view: view,
  sources: sources
});

用于获取搜索结果的函数。有关函数定义,请参阅 GetResultsHandler。解析后,返回一个包含搜索结果数组的对象。

用于获取搜索建议的函数。有关函数定义,请参阅 GetSuggestionsParameters。解析后,返回一个包含建议结果数组的对象。

layer Layer

搜索中查询的图层。这是必需项。图层可以是地图/要素服务要素图层、具有关联要素图层的 SceneLayers、具有关联要素图层的 BuildingComponentSublayerGeoJSONLayerCSVLayerOGCFeatureLayer。请参阅 SceneLayer 指南页面,了解如何发布具有关联要素图层的 SceneLayers。

不支持从客户端图形创建的要素图层。

maxResults Number inherited

指示要返回的最大搜索结果数。

默认值:6
maxSuggestions Number inherited

指示为微件的输入返回的最大建议数。

默认值:6
minSuggestCharacters Number inherited

指示查询建议之前所需的最少字符数。

默认值:1
name String

显示源的名称。

orderByFields String[]

用于对查询结果进行排序的一个或多个字段名称。在字段名称后指定 ASC (升序) 或 DESC (降序) 以控制顺序。默认顺序是 ASC

指定与搜索结果一起返回的字段。

placeholder String inherited

用作源输入文本的提示。

popupEnabled Boolean inherited

指示单击选定结果时是否显示弹出窗口

popupTemplate PopupTemplate inherited

用于显示搜索结果的弹出模板。如果不需要弹出窗口,请将源的 popupTemplate 设置为 null

此属性应在没有配置现有 PopupTemplate 的情况下设置。例如,要素源将默认为图层上配置的任何现有 popupTemplate

指定此项为用户输入的搜索文本添加前缀。

resultGraphicEnabled Boolean inherited

指示是否使用 resultSymbol 在地图上显示所选源的图形。

resultSymbol Symbol inherited

用于显示结果的符号。

已知限制

此属性仅在 layer/locator/source 不是地图的一部分时适用。

searchFields String[]

表示要素图层中要搜索的字段名称的字符串值数组。

searchTemplate String

模板字符串,用于在显示结果时以定义的顺序显示多个字段。

示例
LayerSearchSource.searchTemplate = "{County}, {State}";

指定此项可为用户输入的搜索值添加后缀。

suggestionsEnabled Boolean inherited

指示当用户在微件中输入输入文本时是否显示建议。

默认值:true
suggestionTemplate String

模板字符串,用于在显示建议时以定义的顺序显示多个字段。这优先于 displayField。模板中的字段名称必须采用以下格式:{FieldName}。示例 suggestionTemplate 可能类似于:Name: {OWNER}, Parcel: {PARCEL_ID}

示例
LayerSearchSource.suggestionTemplate = "Name: {OWNER}, Parcel: {PARCEL_ID}";
withinViewEnabled Boolean inherited

指示是否将搜索结果限制在视图的范围内。

默认值:false
zoomScale Number inherited

生成搜索结果的设置缩放比例。此比例是自动实现的。

默认值:null
示例
let searchWidget = new Search({
  view: view,
  sources: [
    {
      layer: featureLayer,
      searchFields: ["Name", "Team"],
      name: "LayerSearchSource",
      zoomScale: 500000
    }
  ]
});

方法概述

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

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

更多详情
Accessor
LayerSearchSource

创建此对象的深度克隆。

更多详情
LayerSearchSource
*

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

更多详情
LayerSearchSource
Boolean

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

更多详情
Accessor

移除对象拥有的句柄组。

更多详情
Accessor
Object

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

更多详情
LayerSearchSource

方法详细说明

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

创建此对象的深度克隆。

返回
类型 描述
LayerSearchSource LayerSearchSource 实例的克隆。
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}

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

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

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