2016-12-09 95 views
0

私はそうのように作成したWMSレイヤを、持っている:OpenLayers 3でWMSレイヤをリフレッシュする方法は?

layer = new ol.layer.Tile({ 
    visible: true, 
    source: new ol.source.TileWMS({ 
     url: 'http://localhost:8085/geoserver/accent/wms', 
     params: { 
      'FORMAT': 'image/png', 
      'VERSION': '1.1.1', 
      tiled: true, 
      STYLES: '', 
      LAYERS: 'accent:layer_' + layer_id + '_', 
      tilesOrigin: 0 + "," + 0.0000000000014415 
     } 
    }) 
}); 

私は(などのタイルのためのレベルの数を増やし、シフトを作る)層ストアを変更することが可能に自分のアプリケーションでいくつかのボタンを、持っています。したがって、これらの変更を表示するには、レイヤを「リフレッシュ」するメソッドが必要です。そのメソッドは、サーバーの要求を行い、それ自体を再描画します。それは古いOL2のような素晴らしい方法があったようです:しかし、私はどのようにOL3で同じ効果を達成することができますか分からない。ありがとう!

+0

またはおそらくGeoServer側のキャッシュを無効にするパラメータがある上updateParamsを使用することができます。 paramsブロックにランダムなパラメータを追加しても、タイルはキャッシュされます。 – Jacobian

答えて

1

それを達成するために、あなたは層のソース

var params = layer.getSource().getParams(); 
layer.getSource().updateParams(params); 
関連する問題