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

自定义指令(directive指令)

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

注册指令

        `vue` 提供了两种指令注册方式

                - 全局指令

                - 局部指令

全局指令

注册在外部

局部指令

VUE-2:自定义指令、事件_第1张图片

注册在组件内部

        在使用指令的时候,需要使用 `v-指令名称` 的方式来调用

ref

        属性,vue提供的一种用于获取标签(组件)实例对象的简便方式

指令生命周期(钩子函数)

VUE-2:自定义指令、事件_第2张图片

输入框光标案例:

VUE-2:自定义指令、事件_第3张图片

输入框自动获得焦点

VUE-2:自定义指令、事件_第4张图片

点击按钮后再获取焦点

拖拽功能案例:

VUE-2:自定义指令、事件_第5张图片

.limit(修饰符,限定范围)

VUE-2:自定义指令、事件_第6张图片


事件

VUE-2:自定义指令、事件_第7张图片

组件的 `methods` 选项(方法集)

        在组件选项中,提供了一个 `methods` 选项,用来存放组件中使用的函数方法,且存放在 `methods` 中的函数方法可以通过

        组件实例(this)进行访问

通过内联方式绑定事件处理函数

VUE-2:自定义指令、事件_第8张图片

        事件绑定函数中的 `this` 指向组件实例

        事件绑定函数中的第一个参数默认为 `event` 对象

VUE-2:自定义指令、事件_第9张图片

VUE-2:自定义指令、事件_第10张图片

        也可以在事件绑定中直接调用函数(并不会立即执行,也是通过事件触发执行的)

                事件对象需要手动传入,名称为 `$event`

VUE-2:自定义指令、事件_第11张图片

事件修饰符

VUE-2:自定义指令、事件_第12张图片

VUE-2:自定义指令、事件_第13张图片

`vue` 还提供了许多按键修饰符

VUE-2:自定义指令、事件_第14张图片


computed

        在实际的应用中,我们会有一些原始数据,同时在应用中又会有一些数据是根据某些原始数据派生出来的,针对这样的一种情况,

        `vue` 定义了一个专门用来处理这种派生数据的选项:`computed`

                1.计算属性类似 `getter` 和 `setter` ,当访问某个计算属性的时候,就会调用 `computed` 中同名的函数,函数的返回值将作为该计                       算属性的值

                2.计算属性的值依赖计算函数中依赖的其它响应式数据

                3.计算属性的值可以缓存,如果依赖的其它响应式数据没有发生变化,但多次访问该计算属性,得到结果是最近一次变化产生的值

                  (相对于调用方法得到结果在某些时候性能要好一些)

简写形式,get、set变体

VUE-2:自定义指令、事件_第15张图片

获取时间案例

VUE-2:自定义指令、事件_第16张图片

VUE-2:自定义指令、事件_第17张图片

男、女、全选


计算属性的 `getter` 与 `setter`

        默认情况下,计算属性函数是一个 `getter` 函数,如果计算属性只有 get 需求,则可以简写

VUE-2:自定义指令、事件_第18张图片


watch

        有的时候,我们需要的派生数据是通过异步的方式处理的,这个时候,计算属性就不太好用了(不能处理异步)。

        我们可以使用另外一个选项:`watch`

VUE-2:自定义指令、事件_第19张图片

VUE-2:自定义指令、事件_第20张图片

VUE-2:自定义指令、事件_第21张图片

不支持promise


延迟输入用watch:

VUE-2:自定义指令、事件_第22张图片


多层监听

        对于多层数据的监听,可以使用字符串+点语法

VUE-2:自定义指令、事件_第23张图片

深度监听

        默认情况下,`watch` 只对当前指定的值进行一层监听,如果需要对对象进行深度监听

VUE-2:自定义指令、事件_第24张图片


过滤器

VUE-2:自定义指令、事件_第25张图片

注册过滤器

    全局过滤器

    局部过滤器

VUE-2:自定义指令、事件_第26张图片

案例:

VUE-2:自定义指令、事件_第27张图片

VUE-2:自定义指令、事件_第28张图片

你可能感兴趣的:(Vue框架)