1、定义一个v-big指令,和v-text功能类似,但会把绑定的数值放大10倍
函数式写法
自定义指令 当前的n值是:
放大10倍的n值是:
完整写法
放大10倍的n值是:
'big-number':function(element,binding){ element.innerText = binding.value * 10; },
big函数何时被调用?
- 指令与元素成功绑定时(一上来)
- 指令所在的模板被重新解析时
2、定义一个v-fbind指令,和v-bind功能类似,但会让其所绑定的input元素默认获取焦点
fbind(element,binding){ element.value= binding.value; element.focus();//不凑效。原因此时指令与元素成功绑定。但是input 并未出现页面。 }
注意:
此时 element.focus();不凑效。原因此时指令与元素成功绑定。但是input 并未出现页面。但是当n变化时 element.focus()会生效。
所以函数式写法不完美。
- 对象式写法
fbind:{ //指令与函数绑定时 bind(element,binding){ console.log("指令与函数绑定时"); element.value= binding.value; }, //指令所在元素插入页面时 inserted(element,binding){ console.log("指令所在元素插入页面时"); element.focus(); }, //指令所在模板被重新解析时 update(element,binding){ console.log("指令所在模板被重新解析时"); element.value= binding.value; } }
3、全局指令
Vue.directive('fbinds',{ //指令与函数绑定时 bind(element,binding){ console.log("指令与函数绑定时"); element.value= binding.value; }, //指令所在元素插入页面时 inserted(element,binding){ console.log("指令所在元素插入页面时"); element.focus(); }, //指令所在模板被重新解析时 update(element,binding){ console.log("指令所在模板被重新解析时"); element.value= binding.value; } }); Vue.directive('big2',function (element,binding) { element.innerText = binding.value * 10; });
总结
- 对象式写法
猜你喜欢
- 11天前梦见结婚预示什么 是好梦吗
- 11天前18种好运来临的征兆
- 11天前女性梦境解析 彩色蛇的象征意义
- 11天前女性梦见无攻击性狼的梦境解析
- 11天前梦中驱蛇蛇遁逃的深层解析
- 8天前女性梦境解析:蟒蛇食人的心理象征
- 8天前梦见医生解梦查询周公解梦大全
- 8天前梦中遇袭的心理分析与应对
- 8天前梦见顺产顺利预示美好征兆
- 8天前梦见被蛇咬脚预示什么
网友评论
- 搜索
- 最新文章
- 热门文章