Хотя перемещение обработчика событий на mounted
(как это было предложено Совалиной в комментариях) работает, это не Vue способ сделать это.
В Vue вместо этого вы должны встроить информацию об обработчике событий в html-шаблон:
(основываясь на коде, который вы разместили на jsfiddle)
<div id="vueapp">
<div id="app" @scroll="handleScroll">
</div>
</div>
JavaScript:
new Vue({
el : '#vueapp',
data : {
showSearchBar : 0
},
methods: {
handleScroll(evt) {
if(evt.target.scrollTop >= 10) {
this.showSearchBar = 1;
}else{
this.showSearchBar = 0;
}
}
},
});