Closed malkovDanik closed 2 years ago
Hello @malkovDanik , I can't reproduce your issue on my setup. Can you provide simple demo?
Гайзенбаг! Осталось только картинка, если воспроизведу закину. Также отметили, что очень сильно начинает тормозить если включен Vue DevTools... возможно это как-то связано.
Есть также предложения по поводу #251. В 6.9.0 есть возможность затыкать переопределение стиля interaction select передав ему в options.style = null | false. Предлагаю дать такую возможность и здесь. На текущий момент значение передается в зависимости от this.getStyleTarget(),getStyle() или _style контейнера style-container.js. Я смог его переопределить только через хук таким макаром:
<template>
<vl-interaction-select
:layers="['layerId']"
:hit-tolerance="10"
:toggleCondition="() => true"
ref="interaction"
>
<template slot-scope="selectScope">
<!-- <vl-style-func :function="styleForInteraction"></vl-style-func>-->
<vl-overlay
v-for="feature in selectScope.features"
:key="feature.id"
:id="feature.id"
:position="feature.geometry.coordinates"
>
<p class="content">
Always opened overlay for Feature ID
<strong>{{ feature.id }}</strong>
</p>
</vl-overlay>
</template>
</vl-interaction-select>
</template>
<script lang="ts">
export default {
name: 'interaction-select',
mounted() {
// eslint-disable-next-line no-debugger
debugger;
this.$refs.interaction._style = false;
},
};
</script>
В таком случаем стиль при клике переопределяться не будет. Возможно есть метода по проще, но за 5ч мне хватило ума только таким образом :) Казалось бы зачем, если есть style-func. но с ним тоже не все так просто, приходится императивно писать код в class.ts, хотя есть возможность писать на vue. там это намного удобнее и понятнее что-ли. В конце концов и создавался vuelayers я так понимаю :)
VueDevTools может тормозить когда включена вкладка События. OpenLayers и соответсвенно VueLayers тригеррит очень много событий, особенно при смещении/зуме карты.
Насчёт отключения дефолтного стиля через null/false - согласен. Я как то упустил этот момент, надо добавить
Благодарю!
Vesion "vuelayers": "0.12.0-rc.26", When I use `<vl-style-icon :src="resources/img.svg" :scale="1.5"