码迷,mamicode.com
首页 > 其他好文 > 详细

vue自定义指令directive

时间:2019-10-06 00:33:42      阅读:68      评论:0      收藏:0      [点我收藏+]

标签:参数   控制台   express   date   变量   全局   虚拟   context   元素   

vue中指令分为全局指令和局部指令

先来看全局自定义指令:

第一个参数是指令的名字,第二个参数可以是函数也可以是对象,先来看函数:

技术图片

函数中接收三个参数:

el在这里是input元素

bindings里是一些绑定信息:
技术图片

其中expression是指绑定的变量名字,这里是content

name是指令名字

value是绑定数据的值,上面content为空,所以目前value为空

 

v-slice上还可以写修饰符

技术图片

技术图片

还可以传参:

技术图片

技术图片

vnode虚拟节点:

技术图片

vnode中contex是vue实例,其中的content是vue中的content值,即通过vnode.context拿到vue实例

小demo:规定input框中只能输入5位

技术图片技术图片

再利用对象的形式实现:

技术图片

bind + update 等于之前的函数

第三个对象:(不常用)

技术图片

 

完善一下:在这个demo中用到两个指令,v-slice和v-model ,不太合适,所以要v-slice自己实现双向数据绑定:

技术图片

此功能实现了,但是当data中content值被提前设置后,出现此情况

技术图片技术图片

所以取value值时应先对其进行截取

技术图片技术图片

又发现content值很长

技术图片

截取想要是长度,可根据

v-slice:9.number这个属性
技术图片
技术图片这里限制9位数
 

在控制台更改content值:

技术图片

发现input中的值没变。要想同步更新,需写在update中

技术图片

技术图片

 

增加功能:.number时不能有字母出现

技术图片

update中也要做处理

技术图片

vue自定义指令directive

标签:参数   控制台   express   date   变量   全局   虚拟   context   元素   

原文地址:https://www.cnblogs.com/tianya-guoke/p/11626191.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!