your sample is working fine for me. if you're having trouble clicking on point features, consider calling
tolerance() and passing in a number of screen pixels greater than the default value of
that being said, you are not limited to working with
L.esri.dynamicMapLayer in order to get a reference to the symbology defined by the service itself. when working with
L.esri.featureLayers, you can use our renderers plugin to get the same effect with graphics on the map instead of a raster image produced by the server on the fly.
i'm noticing now that our API just passes along whatever value you supply for the
layers parameter directly, while the operation itself expects you to concatenate a modifier like
all: to allow for more finegrained control. (see my own working example with default tolerance here).
if you can confirm that my modification solves the problem on your end, then i see two options going forward.
- ensure the API appends
all: automatically, since its the most versatile modifier.
- explain in the documentation that its up to developers to construct a valid value using one of the modifiers themselves.