美文网首页
| Vue 自定义指令

| Vue 自定义指令

作者: Hemingway_AT | 来源:发表于2019-11-01 00:16 被阅读0次

介绍

官网:https://cn.vuejs.org/v2/guide/custom-directive.html

学习

全局指令定义:

image.png

知识点

  • 5 个钩子函数,4 个钩子函数参数
  • 动态指令参数
  • 简写
  • 字面量

练习

<template>
  <div id="app">
    <ul>
      <li v-for="(item, index) in list" :key="index">{{item}}</li>
    </ul>
    <h2 v-scroll>onScroll</h2>
  </div>
</template>

<script>
import Vue from 'vue';

let list = [];
let i = 100;
while(i > 0){
  list.push(i);
  i--;
}

Vue.directive('scroll', {
  // 钩子函数
  inserted(el, binding, vnode){
    // 虚拟节点
    console.log(vnode);
    window.addEventListener('scroll', vnode.context.onScroll);
  }
});

export default {
  name: 'app',
  data () {
    return {
      list: list,
      num: 1000
    }
  },
  methods:{
    onScroll(){
      let scrollTop = document.documentElement.scrollTop || window.scrollY || window.pageYOffset ;
      let innerHeight = window.innerHeight;
      let scrollHeight = document.documentElement.scrollHeight;

      console.log(scrollTop, innerHeight, scrollHeight, scrollHeight - scrollTop - innerHeight);
      // 倒数1000距离范围内,每200距离打印一次距底距离
      if(scrollHeight - scrollTop - innerHeight == this.num){
        console.log(`见底距离:${scrollHeight - scrollTop - innerHeight}`);
        this.num -= 200;
        if(this.num == -200){
          this.num += 1200;
        }
      }
    }
  }
}
</script>

<style>
</style>
  • 效果
演示.gif

相关文章

  • season2-全局API

    第1节:Vue.directive 自定义指令 Vue.directive自定义指令 自定义的指令:changec...

  • Vue div节点滚动事件-加载更多

    使用Vue.directive注册全局指令 绑定事件 对于Vue自定义指令不明白的同学请移步: Vue自定义指令 ...

  • VUE-2:自定义指令、事件

    directive自定义指令 我们还可以通过`Vue`提供的directive方法来自定义指令 注册指令 `vue...

  • vue入门6---vue基本指令、自定义指令、插件

    一、vue常用指令概览 二、vue自定义指令 注册全局指令Vue.directive('my-directive'...

  • vue自定义指令初探

    vue自定义指令初探 一、什么是自定义指令 自定义指令是用来操作DOM的。尽管Vue推崇数据驱动视图的理念,但并非...

  • vue 有自定义指令

    vue 的自定义指令,分为全局自定义指令和局部自定义指令,局部自定义指令等价于局部组件。 自定义指令可以对DOM进...

  • Vue指令钩子函数

    Vue指令上篇文章有讲过了,现在分析Vue指令钩子函数。 自定义指令 全局定义:Vue.directive( ' ...

  • vue自定义指令

    除了内置的指令外,Vue 也允许注册自定义指令。 vue用Vue.directive(id,definition)...

  • vue知识集锦(三)

    自定义指令 除了核心功能默认内置的指令 (v-model和v-show),Vue 也允许注册自定义指令。尽管Vue...

  • Vue基础(五)--自定义指令与过渡

    1.自定义指令 分类:全局指令、局部指令 1.1 自定义全局指令 使用全局方法 Vue.directive(指令I...

网友评论

      本文标题:| Vue 自定义指令

      本文链接:https://www.haomeiwen.com/subject/wgntbctx.html