前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Vue自定义指令&键盘修饰符

Vue自定义指令&键盘修饰符

作者头像
切图仔
发布2022-09-08 15:39:36
2980
发布2022-09-08 15:39:36
举报
文章被收录于专栏:生如夏花绚烂
Vue自定义键盘修饰符

系统自带键盘修饰符

代码语言:javascript
复制
@keyup:
   .enter
   .tab
   .delete
   .esc
   .space
   .up
   .down
   .left
   .right

自定义键盘修饰符

代码语言:javascript
复制
Vue.config.keyCodes.按键名称=按键ascll码

//使用
@keyup.f2=test()
Vue自定义指令

全局指令

代码语言:javascript
复制
Vue.directive(name,{
    //钩子函数
        bind:function(){},当指令绑定到元素上时执行
        inserted:function(){},当元素插入到dom中时执行
        updated:function(){}当dom更新时执行,可能会执行多次
})

参数说明 name:指令名称(不用加“v-”前缀)

指令绑定 v-自定义指令名

示例--元素获取焦点指令

代码语言:javascript
复制
<input type="text" class="form-control" v-focus v-model="keywords">
//自定义指令
Vue.directive('focus',{
        inserted:function(el){
            el.focus()
        }
})

指令传参

指令也可以接受参数如下示例

代码语言:javascript
复制
<p v-size="30">HELLO WORD</p>
 //自定义指令
Vue.directive('size',{
    inserted:function(el,binding){
        el.style.fontSize=binding.value+'px'
    }
})

私有指令

私有指令只在当前vm对象中生效。

定义格式:

代码语言:javascript
复制
var vm =  new Vue({
    el:'#app',
    data:{},
    directives:{
        //指令名称
        fontweight:{
             bind:function(el,binding){
               el.style.fontweight=binding.value
             }
      }
    }
})

指令简写

然后你的代码只在bind和updated时生效那么你可以将指令简写为

代码语言:javascript
复制
var vm =  new Vue({
    el:'#app',
    data:{},
    directives:{
        //指令简写
      'fontSize':function(el,bing){
            el.style.fontSize=bing.value
        }
    }
})
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-06-23 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Vue自定义键盘修饰符
  • Vue自定义指令
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档