Vuejs событие v-on: scroll.passive не работает? - PullRequest
0 голосов
/ 10 июля 2019

Я работаю с VueJ, у меня проблема с событием v-on: scroll.passive, я ищу, но у него не так много примеров, поэтому я не могу заставить его работать.

<template>
   <div id="app" v-on:scroll.passive="onScroll">
      <content-component :posts="posts"></content-component>
   </div>
</template>
<script>
  import ContentComponent from './components/ContentComponent.vue';
  export default {
    name: 'app',
    components: {
      ContentComponent,
    },
    data(){
      return{
        posts : {},
      }
    },
    methods:{
      .......
      onScroll : function () {
        console.log('aaa');
      },
    }
  }
</script>

Когда я прокручиваю сайт вниз или вверх, ничего не происходит, метод onScroll не работает, где я ошибаюсь? Я использую последние Vuejs.

Спасибо за помощь

1 Ответ

0 голосов
/ 10 июля 2019

Существует очень мало информации, чтобы помочь вам.Однако, вы добавили пользовательскую директиву прокрутки?

Пожалуйста, проверьте этот пример с сайта Vuejs.org.Он содержит простую реакцию на пользовательскую прокрутку. Пример CodePen https://codepen.io/sdras/pen/983220ed949ac670dff96bdcaf9d3338

Ниже я вставил директиву, которую они используют для прокрутки.

Vue.directive('scroll', {
  inserted: function(el, binding) {
    let f = function(evt) {
      if (binding.value(evt, el)) {
        window.removeEventListener('scroll', f);
      }
    };
    window.addEventListener('scroll', f);
  },
});
...