Search code examples
openlayers

OpenLayers 4.6.4 Add / Remove layer event


Is there an event that is triggered when a layer is added / removed from the map?

I saw something through the map.getLayers() group but it only seems to fired the "changed" event and doesn't contain what layer was added or removed.


Solution

  • Try propertychange event on layers. it's triggered when the layer's property changed.

    map.getLayers().on("propertychange", function(e) {
        // triggered when layer added or removed
    });
    

    codepen: https://codepen.io/anon/pen/zRwWLg

    or set change event on each layer

    layer.on("change", function(e) {
        // then is sure what layer triggers the event
    });