<!DOCTYPE html>
<html>

<head lang="en">
  <meta charset="UTF-8">
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/leaflet/1.0.0-beta.1/leaflet.css" />
  <title></title>
  <style>
    html,
    body,
    #map {
      margin: 0;
      height: 100%;
      width: 100%;
    }
  </style>
</head>

<body>
  <div id="map"></div>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/leaflet/1.0.0-beta.1/leaflet.js"></script>
  <script src="lib/proj4.js"></script>
  <script src="lib/proj4leaflet.js"></script>
  <script src="../dist/Leaflet-WFST.src.js"></script>
  <script>
    var map = L.map('map').setView([60.372465778991284, 53.64349365234375], 9);
    // add an OpenStreetMap tile layer
    L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png', {
      attribution: '&copy; <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'
    }).addTo(map);

    var options = {
      url: 'http://geoserver.ics.perm.ru/geoserver/ows',
      typeNS: 'ics',
      typeName: 'perm_water_polygon',
      crs: L.CRS.EPSG4326,
      geometryField: 'ogr_geometry',
      showExisting: false,
      style: {
        color: 'blue',
        weight: 2
      }
    };

    var wfst = new L.WFST(options).addTo(map);

    var loadedBounds = map.getBounds();

    wfst.loadFeatures(L.Filter.bbox(options.geometryField, loadedBounds, options.crs));

    var continueLoad = function () {
      var bounds = map.getBounds();

      if(loadedBounds.contains(bounds)) {
        return;
      }

      var rectangle = L.rectangle(loadedBounds);
      loadedPart = new L.Filter.Not(new L.Filter.Intersects(options.geometryField, rectangle, options.crs));

      loadedBounds.extend(bounds);
      var newRectangle = L.rectangle(loadedBounds);
      var newPart = new L.Filter.Intersects(options.geometryField, newRectangle, options.crs);

      wfst.loadFeatures(new L.Filter.And(newPart, loadedPart));

    };

    map.on('zoomend', continueLoad);
    map.on('moveend', continueLoad);
  </script>
</body>

</html>

Add continue data load example
Add continue data load example
