#javascript #vue.js #debugging #google-chrome-devtools #breakpoints
#javascript #vue.js #отладка #google-chrome-devtools #точки останова
Вопрос:
Короче говоря, Vue требует некоторой хитрости при отладке высоты и @scroll
проблем в компонентах. Лучший призыв к действию — найти, какой элемент прокручивается, и переместить прокрутку на дочерний элемент, в моем случае.
Итак, как я могу найти, какой элемент прокручивается без бесчисленных добавлений / удалений прослушивателей событий?
Ответ №1:
Вы можете получить элемент, который вы прокручиваете, с помощью события прокрутки, которое передается обработчику прокрутки event.target
. Я включил фрагмент ниже, который, надеюсь, поможет вашему сценарию.
Vue.config.productionTip = false;
Vue.config.devtools = false;
new Vue({
el: "#app",
methods: {
scrollHandler(ev) {
console.log(ev.target.id);
}
}
});
#app > div > div {
height: 200px;
overflow-y: scroll;
max-height: 100px;
display:block;
}
h1 {
font-size: 3rem;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>
<div id="app">
<div>
<div :id="i" v-for="i in 5" :key="i" @scroll="scrollHandler">
<h1>{{i}}</h1>
</div>
</div>
</div>