I'd like to query content according to a spatial relationship using ArcGIS API 4.12. I've set up a test of this query as follows:
var municBoundariesURL = "https://devarcgisent.placeholdertext.lan/serverdev/rest/services/ParkFinder/MunicipalBoundaries2/MapServer/0"
var queryOptions = new Query({
//where: "1=1",
outFields: ["*"],
returnGeometry: true,
spatialRelationship: "within",
geometry: "-83.04517899999858,42.32973669999929"
});
var queryTask = new QueryTask({
url: municBoundariesURL
});
queryTask.execute(queryOptions).then(function(response){
var nameResults = response.features.map(function(feature){
feature.name = feature.attributes.NAME
return feature;
});
});
I know this isn't set up correctly, but I played with a number of configurations and every time I got a message in the console saying: "[esri.core.Accessor] Accessor#set Invalid property value, value needs to be one of 'esri.geometry.Extent', 'esri.geometry.Multipoint', 'esri.geometry.Point', 'esri.geometry.Polyline', 'esri.geometry.Polygon', or a plain object that can autocast (having .type = 'extent', 'multipoint', 'point', 'polyline', 'polygon')"
The heart of my question boils down to lines 2-7 above. I can successfully search by field name (ie, set 'where' equal to "1=1" or any other field name), so I know the query is working when the query options are populated properly.
Can someone help me to set up the query options so that I can return just the feature that the point (specified with 'geometry') falls within?
Thank you
Solved! Go to Solution.
Paul,
The error message is telling you the problem. You need to pass an actual Point class and not a string to the queries geometry property.
Paul,
The error message is telling you the problem. You need to pass an actual Point class and not a string to the queries geometry property.
That did it. Thank you, Robert!