帮我写一段arcgis for js的空间查询代码
时间: 2023-05-31 08:05:30 浏览: 61
以下是一段简单的ArcGIS for JS空间查询代码,它将查询指定图层中的所有点,并在地图上突出显示它们:
```
require([
"esri/Map",
"esri/views/MapView",
"esri/layers/FeatureLayer",
"esri/tasks/support/Query",
"esri/tasks/QueryTask",
"dojo/domReady!"
], function(Map, MapView, FeatureLayer, Query, QueryTask) {
// 创建地图
var map = new Map({
basemap: "streets-navigation-vector"
});
// 创建地图视图
var view = new MapView({
container: "viewDiv",
map: map,
center: [-122.4194, 37.7749], // 旧金山市中心
zoom: 12
});
// 创建要查询的图层
var featureLayer = new FeatureLayer({
url: "https://services.arcgis.com/V6ZHFr6zdgNZuVG0/arcgis/rest/services/USA_Congressional_Districts/FeatureServer/0"
});
// 创建查询
var query = new Query({
where: "1=1", // 查询所有
outFields: ["*"]
});
// 创建查询任务
var queryTask = new QueryTask({
url: "https://services.arcgis.com/V6ZHFr6zdgNZuVG0/arcgis/rest/services/USA_Congressional_Districts/FeatureServer/0"
});
// 运行查询
queryTask.execute(query).then(function(result) {
// 将查询结果添加到图层
featureLayer.applyEdits({
addFeatures: result.features
});
// 将图层添加到地图
map.add(featureLayer);
// 突出显示查询结果
view.whenLayerView(featureLayer).then(function(layerView) {
layerView.highlight(result.features);
});
});
});
```