ArcGIS API for JavaScript 4.0 Beta2

Last week, Esri announced the release of the ArcGIS JS API 4.0 Beta 2.

I’ve talked a lot about the 4.0 beta and a lot of the new features available with it. It’s not just the 3D functionality, which is cool, but also much of the core of the API such as Accessor, Collections, Promises, and how Maps and Views work.

So what do we get with the Beta 2 release?

Popup!

To start with, there is a new Popup, not just that, it’s a dockable Popup. That’s a sweet new feature of the Popup.

3D Treats

There’s also some new 3D goodness with WebScenes and Local Scenes. I know you oil and gas nuts are going to dig the Local Scenes.

Vector Tiles

We also get Vector Tiles in this beta release. This implements the Vector Tile spec and style spec from Mapbox, to use Vector Tiles in the ArcGIS JS API. There is a pending pull-request in the Mapbox repo on some of the updates that were made to implement this in the API. You can read more about it here.

Loadable

There is also a new pattern introduced in the API that some may find useful. This is the loadable pattern. This pattern is inspired from other ArcGIS SDKs, such as the Android SDK, which you can read more about here.

Basically, the map and layers are on only minimally loaded to start. This lazy loading allows you, for example, to build up a list of layers without making numerous network requests up front. You just need to call the load method on each item to fully load them. You will not normally need to know about this pattern because the included Views will handle loading everything to draw the map for you. But if you are doing some fine-grained work that requires prepping the layers ahead of time, this could be some very useful functionality for you.

I’ll be covering various parts of the 4.0 beta 2 release in the coming weeks, so keep an eye out.

I’m also working on a new book on the ArcGIS API for JavaScript 4. You can read more about it here. I’ll be publishing the first couple of chapters soon and updates will continue until the final release and probably a bit after. Stay tuned.