dojo.js:229 [esri.layers.graphics.sources.MemorySource] Source modifications will not propagate after layer has been loaded. Please use .applyEdits() instead
将GraphicsLayer转换为FeatureLayer后遇到问题:
1)layer.add(graphic) / layer.remove(graphic) 需替换为 featureLayer.applyEdits() [AddFeatures,DeleteFeatures]。
2) 对graphic.attributes的更新,需替换为 featureLayer.applyEdits() [UpdateFeatures]。
3) graphic.symbol,由FeatureLayer.renderer实现。
4) graphic.attributes,由创建FeatureLayer的时候在Fields中统一定义。
4.1)Fields定义中,不存在boolean的字段,需转换为interger或string。
5) 在GraphicsLayer上的同步执行操作,在FeatureLayer上需改为异步执行。
# GraphicsLayer当数据量大的时候,缩放地图,在图形渲染上性能不如FeatureLayer。
备注:
简记一次Esri JS API升级的影响。