【发布时间】:2015-09-20 11:32:44
【问题描述】:
我有一个包含 12 个具有相同定义样式的项目的要素图层。但我想在渲染时将每个项目更改为具有唯一符号。
var Layer = new FeatureLayer("http://...my map server.../0");
Layer.graphics.forEach(function (entry) {
// loop through each item
console.log(entry);
console.log(entry.attributes.FID);
var symbol = new PictureMarkerSymbol({ "url":"/images/icons/fid_" + entry.attributes.FID + ".png", "height":20, "width":20 });
entry.setSymbol(symbol);
var renderer = new esri.renderer.SimpleRenderer(symbol);
Layer.setRenderer(renderer); // <-- this appears to override all previous items
});
map.addLayer(Layer);
为了简单起见,我省略了一些代码;我现在设置了一个符号,但它是为所有项目循环的最后一个 entry 的符号。
我需要每个entry 都有一个由其FID (0-11) 定义的唯一符号
我搜索了 ArcGIS 的 JavaScript API 文档,但找不到任何解决此问题的内容。谢谢。
【问题讨论】:
标签: javascript arcgis arcgis-server arcgis-js-api