當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


JavaScript ArcGIS FeatureLayer.createQuery用法及代碼示例


基本信息

以下是所在類或對象的基本信息。

AMD: require(["esri/layers/FeatureLayer"], (FeatureLayer) => { /* code goes here */ });

ESM: import FeatureLayer from "@arcgis/core/layers/FeatureLayer";

類: esri/layers/FeatureLayer

繼承: FeatureLayer > Layer > Accessor

自從:用於 JavaScript 4.0 的 ArcGIS API

用法說明

FeatureLayer.createQuery函數(或屬性)的定義如下:

createQuery () {Query}


創建查詢參數對象,該對象可用於獲取滿足圖層配置的要素,例如definitionExpression、gdbVersion和historyMoment。它將根據圖層的數據函數返回ZM值。它將查詢參數的 outFields 屬性設置為 ["*"] 。結果將包括 client-side queries 的所有 available fields 的要素幾何和值或服務器端查詢圖層中的所有字段。

返回:

類型 說明
Query 表示圖層定義表達式和其他配置的查詢對象。

例子:

// this snippet shows the query parameter object that is returned
// from FeatureLayer.createQuery().
const queryParams = new Query();
const dataCapabilities = layer.get<DataCapabilities>("capabilities.data");

queryParams.gdbVersion = layer.gdbVersion;
queryParams.historicMoment = layer.historicMoment;
queryParams.returnGeometry = true;

if (dataCapabilities) {
  if (dataCapabilities.supportsZ && layer.returnZ != null) {
    queryParams.returnZ = layer.returnZ;
  }

  if (dataCapabilities.supportsM && layer.returnM != null) {
    queryParams.returnM = layer.returnM;
  }
}

queryParams.outFields = ["*"];
queryParams.where = layer.definitionExpression || "1=1";
queryParams.multipatchOption = layer.geometryType === "multipatch" ? "xyFootprint" : null;
// Get a query object for the layer's current configuration
// queryParams.outFields will be set to ["*"] to get values
// for all available fields.
const queryParams = layer.createQuery();
// set a geometry for filtering features by a region of interest
queryParams.geometry = extentForRegionOfInterest;
// Add to the layer's current definitionExpression
queryParams.where = queryParams.where + " AND TYPE = 'Extreme'";

// query the layer with the modified params object
layer.queryFeatures(queryParams).then(function(results){
  // prints the array of result graphics to the console
  console.log(results.features);
});

相關用法


注:本文由純淨天空篩選整理自arcgis.com大神的英文原創作品 FeatureLayer.createQuery。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。