当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


JavaScript ArcGIS QueryTask用法及代码示例


基本信息

以下是所在类或对象的基本信息。

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

ESM: import QueryTask from "@arcgis/core/tasks/QueryTask";

类: esri/tasks/QueryTask

继承: QueryTask > Task > Accessor

自从:用于 JavaScript 4.0 的 ArcGIS API

用法说明

已弃用 从 4.20 版开始。请改用query

在图层上执行不同类型的查询操作。此类中最常用的方法是execute(),它执行作为参数传递给函数的Query 对象中定义的查询。 QueryTask.execute() 返回一个解析为 FeatureSet 的 Promise,其中包含满足 Query 的层中的特征。

使用QueryTask,您还可以获得满足查询的要素数量、要素范围、相关要素或与要素关联的记录、要素附件或要素的featureId。

例如,当使用世界城市的要素图层时,要获得人口超过 100 万人的城市的FeatureSet,请使用以下代码:

require(["esri/tasks/QueryTask", "esri/tasks/support/Query"], function(QueryTask, Query){
  let citiesLayerUrl = " ... "; // Represents the REST endpoint for a layer of cities.
  let queryTask = new QueryTask({
    url: citiesLayerUrl
  });
  let query = new Query();
  query.returnGeometry = true;
  query.outFields = ["*"];
  query.where = "POP > 1000000";  // Return all cities with a population greater than 1 million

  // When resolved, returns features and graphics that satisfy the query.
  queryTask.execute(query).then(function(results){
    console.log(results.features);
  });

  // When resolved, returns a count of the features that satisfy the query.
  queryTask.executeForCount(query).then(function(results){
    console.log(results);
  });

});

相关用法


注:本文由纯净天空筛选整理自arcgis.com大神的英文原创作品 QueryTask。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。