Опция OpenLayers 5 Typescript Highlight - PullRequest
0 голосов
/ 14 мая 2019

Я пытаюсь использовать объект «Выбрать» из библиотеки Typescript Openlayers 5 и добавить функцию в наложение подсветки, но функция не отображается.

Я добавил векторные слои наложения подсветки в свойmap («mapValues» - это одноэлементное хранилище глобальных значений и объектов)

public static addHighlightOverlay(){
let highlightStyleCache = {}; 

mapValues.highlightOverlay = new olLayerVector({
source: new olSourceVector(),
map: mapValues.map,
style: function(feature,resolution){
  let text = resolution * 100000 < 10 ? feature.get('text') : '';
  if(!highlightStyleCache[text]){
    highlightStyleCache[text] = new Style({
      stroke: new Stroke({color: '#ffcc33', width:2}),
      fill: new Fill({color: 'rgba(255,255,255,0.2'}),
      text: new Text({
        font: '12px Calibri,sans-serif',
        text: text,
        fill: new Fill({
          color: '#000'
        }),
        stroke: new Stroke({
          color: '#f00',
          width: 3
        }),
        zIndex: 10000})
    })
  }
  return highlightStyleCache[text]

}

})
mapValues.highlightOverlay.setMap(mapValues.map);
}

Я создаю новый «Выбрать» и добавляю взаимодействие на карту.

let selectClick = new Select({
condition: click
});
mapValues.map.addInteraction(selectClick);

ипри "выборе" я добавляю функцию к оверлею подсветки

selectClick.on('select', function(e) {
mapValues.currSelectedFeature = e.selected[0];    mapValues.highlightOverlay.getSource().addFeature(mapValues.currSelectedFeature);    

});

Я ожидаю увидеть функцию, добавленную к подсветке highlightOverlay с желтым штрихом вокруг нее, но ничего не вижу?

Любая помощь с благодарностью!

...