OpenLayers3: Как перезагрузить слой из GeoServer?

У меня есть веб-страница, на которой отображается файл GeoTIFF, обслуживаемый через GeoServer, как файл OpenLayers3 ImageWMS. Мне нужно (с помощью кнопки) перезагрузить слой OL3 после изменения базового GeoTIFF.

Я искал вокруг и пытался

layer.dispatchChangeEvent();

на рассматриваемом слое. Но карта/изображение не обновляются.

Я также попытался удалить слой, создать новый слой и добавить его обратно. Это тоже не сработало.

Единственное, что работает, — это перезагрузить всю веб-страницу, и в этом случае на карте отображается новое изображение, но все состояния на странице теряются.

мой вопрос

Как я могу перезагрузить слой без перезагрузки всей страницы?

Спасибо


person tinlyx    schedule 09.12.2014    source источник


Ответы (1)


Чтобы перезагрузить данные с сервера (т.е. источника), вы должны вызвать

layer.getSource().dispatchChangeEvent();

в версии 3.0.0. Обратите внимание, что текущий мастер и будущая версия v3.1.0 используют

layer.getSource().changed();

вместо.

person ahocevar    schedule 11.12.2014