不具合 ID 番号 |
BUG-000104611 |
送信されました | April 20, 2017 |
最終更新日 | June 5, 2024 |
適用対象 | ArcGIS API for JavaScript |
見つかったバージョン | 3.20 |
オペレーティング システム | Windows OS |
オペレーティング システムのバージョン | 10.0 64 Bit |
ステータス | Will Not Be Addressed
開発チームは、この問題またはリクエストを検討した結果、これに対処しないことに決定しました。 問題の「参考情報」セクションに、さらに詳細な説明が示されていることがあります。
|
参考情報
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;
});
対処法
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.
再現の手順