乐趣区

关于openlayers:openlayers多地图同步分屏对比

/**
 * 多地图同步,顺次传入的多个地图都会同步
 * @param {Array} 须要同步的地图
 * @param {Object} options 地图同步配置参数
 * @returns {Function} 勾销同步的办法
 */
export function syncMultiMap(syncMaps, options) {let activeMap = syncMaps.shift();
  for (let map of syncMaps) {
    // 存储本身视图对象
    map._selfView = map.getView();
    // 存储同步参照物
    map._activeMap = activeMap;
    // 绑定指标视图对象
    map.setView(map.getView());
  }
  return function () {for (let map of syncMaps) {map.setView(map._selfView);
      map._activeMap = null;
    }
  }
}
退出移动版