Bug-ID-Nummer |
BUG-000104611 |
Eingereicht | April 20, 2017 |
Zuletzt geändert | June 5, 2024 |
Gilt für | ArcGIS API for JavaScript |
Gefunden in Version | 3.20 |
Betriebssystem | Windows OS |
Betriebssystemversion | 10.0 64 Bit |
Status | Will Not Be Addressed
Das Entwicklungsteam hat das Problem bzw. die Anforderung sorgfältig geprüft und ist zu dem Schluss gekommen, es nicht zu beheben bzw. keine weiteren Schritte zu unternehmen. Weitere Erläuterungen finden Sie ggf. im Abschnitt "Zusätzliche Informationen" des jeweiligen Problems.
|
Zusätzliche Informationen
The problem is that setPreRequestCallback does not just intercept the query request, it intercepts other requests and not all of those requests have a where property on the content. Some checks need to be added to the setPreRequestCallback function to ensure a query task request.
To test this in the sample app (http://jsbin.com/zisoqib/3/edit?js,output) just surround the var y with an if statement as follows.
esriRequest.setRequestPreCallback(function (ioArgs) {
var x = ioArgs.url.endsWith("query");
if(ioArgs.content && ioArgs.content.where){
var y = ioArgs.content.where.startsWith("xxx");
}
return ioArgs;
});
Workaround
Setting a definitionExpression on the layer causes the layer to render in the map. See this in the sample provided at http://jsbin.com/zisoqib/3/edit?js,output. Uncommenting both the definitionExpression within the properties of the layer and the line with the ioArgs.content.where, the layer renders in the map without issues.
Schritte zur Reproduzierung