2

I'm working on a web site that displays a couple of maps, with generic base layers, over which we display a number of customer-configurable overlays.

We've built it using MapBox - currently version 2.1.5.

Our landbases are MapBox projects, configured on their website. What we've currently built for our overlays are WMS layers, L.tileLayer.wms().

Now we've got a rush job to configure things for a new, big, client, and it turns out their map data is only available through ESRI's REST services, and not through WMS.

Any ideas on what kind of support there is for ESRI's REST services, in MapBox?

A quick browse around found esri-leaflet, which seems to be a JS library that ESRI put out. Has anyone worked with this?

5

You can almost certainly replace the mapbox.js library with leaflet.js. And I'd be surprised if the esri-leaflet library doesn't just work with the MapBox version of leaflet.

I've got an old trivial example here (click on the map, or turn on the layer visibility): https://maps.gcc.tas.gov.au/propertyinformation#16/-41.4656/147.1808

Code here: https://github.com/gccgisteam/maps-website/blob/master/propertyinformation.html

  • 1
    Pulled esri-leaflet from github, plugged it in, and it just worked. Once I managed to get access to some of our customers' ArcGIS REST services. (They tend to hide them behind firewalls.) Most of the work was in changing our configuration system so we could configure a new type of map layer. – Jeff Dege Aug 20 '15 at 18:12
0

there's no need to replace mapbox.js w/ leaflet. as @alexgleith said, it 'just works'.

// mapbox.js v2.2.1 esri-leaflet v1.0.0
var map = L.mapbox.map('map', 'mapbox.streets')
  .setView([45.526, -122.667], 13);
L.esri.featureLayer({
  url:  'https://services.arcgis.com/rOo16HdIMeOBI4Mb/arcgis/rest/services/Heritage_Trees_Portland/FeatureServer/0'
}).addTo(map);

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.