vue学习笔记-11-自定义指令
之前学的指令可以满足我们大多数常规的操作,哪那些指令又被称作vue的内置指令。有些时候,又需要我们自定义一些指令。
一,不带参数的自定义指令
现在拿表单第一个元素自动获取焦点来举例:
<!DOCTYPE html>
<html><head><meta charset="utf-8"><title></title><style type="text/css"></style></head><body><div id="app"><input v-focus /></div><script type="text/javascript" src="./js/vue.min.js"></script><script type="text/javascript">//自定义指令//第一个参数是自定义的vue指令名//第二个是指令具体的功能代码Vue.directive('focus',{inserted:function(el){//el表示所绑定的元素el.focus()}})var vm=new Vue({el: "#app",data:{score: 90,flag:false}})</script></body>
</html>
这就可以在刷新时,自动获取焦点了。
官网上更具体的教程:https://cn.vuejs.org/v2/guide/custom-directive.html#ad
上面这个自定义指令是不带参数的
二,带参数的自定义指令
<!DOCTYPE html>
<html><head><meta charset="utf-8"><title></title><style type="text/css"></style></head><body><div id="app"><input type="text" v-color="msg"/></div><script type="text/javascript" src="./js/vue.min.js"></script><script type="text/javascript">//自定义指令//第一个参数是自定义的vue指令名//第二个是指令具体的功能代码Vue.directive('color',{bind:function(el,binding){//el表示所绑定的元素el.style.backgroundColor=binding.value.color}})var vm=new Vue({el: "#app",data:{msg:{color:'blue'}}})</script></body>
</html>
三,局部指令,关于指令还可以换一种方式来定义
<!DOCTYPE html>
<html><head><meta charset="utf-8"><title></title><style type="text/css"></style></head><body><div id="app"><input type="text" v-color="msg"/></div><script type="text/javascript" src="./js/vue.min.js"></script><script type="text/javascript">var vm=new Vue({el: "#app",data:{msg:{color:'blue'}},directives:{color:{bind:function(el,binding){el.style.backgroundColor=binding.value.color}},focus:{inserted:function(el){el.focus}}}})</script></body>
</html>
也就是把指令的定义放在vm组件当中了,相当于是属于vm的指令,可以用局部变量的方式来理解。所以这种指令叫做局部指令,而不是之前的全局指令。
vue学习笔记-11-自定义指令相关推荐
- Vue.js 学习笔记 十一 自定义指令
之前看到过v-bind,v-on等指令,Vue还可以自定义指<div id="divApp" <div v-focus></div> & ...
- 4、Angular JS 学习笔记 – 创建自定义指令 [翻译中]
2019独角兽企业重金招聘Python工程师标准>>> 创建自定义指令 注意:本指南是针对已经熟悉AngularJS基础的开发者.如果您只是想要开始,建议您先去看教程.如果你在寻找指 ...
- Spring.NET学习笔记11——自定义对象行为(基础篇) Level 200
Spring.NET通过几个专门的接口来控制容器中对象的行为.说到对象的行为无非就要提到对象的生命周期控制.类似在WinForm开发,Form生命周期中,Load方法为Form的载入方法和Dispos ...
- Vue.js 学习笔记 十 自定义按键事件
<div id="divApp"><!--任何键盘动作都会触发--><input type="text" v-on:keyup=& ...
- Vue学习笔记05 组件的自定义事件-组件通信-$nextTick-脚手架解决ajax跨域-插槽-过渡动画
文章目录 Vue学习笔记05 父组件给子组件传值 注意点 子组件给父组件传值 父组件接受子组件的传值 通过函数 组件的自定义事件 事件绑定的第一种写法 @或v-on 事件绑定的第二种写法:使用ref ...
- day4 vue 学习笔记 组件 生命周期 数据共享 数组常用方法
系列文章目录 day1学习vue2笔记 vue指令 day2 学习vue2 笔记 过滤器 侦听器 计算属性 axios day3 vue2 学习笔记 vue组件 day4 vue 学习笔记 组件 生命 ...
- 狂神说 vue学习笔记
vue学习笔记 文章目录 vue学习笔记 一.第一个vue程序 1. 什么是MVVM 2. 为什么要使用MVVM 3.直接新建项目 4.导入vue.js 5.简单绑定元素 6 vue的声明周期 二.V ...
- Vue学习笔记---------Vue2
Vue学习笔记---------Vue2 1. Hello,world! 插值语法: 用 {{ xxx }} 插入一个值 ,该值在data中自定义内容. <body><div id= ...
- Vue学习笔记进阶篇——Render函数
本文为转载,原文:Vue学习笔记进阶篇--Render函数 基础 Vue 推荐在绝大多数情况下使用 template 来创建你的 HTML.然而在一些场景中,你真的需要 JavaScript 的完全编 ...
- Vue学习笔记01——Vue开发基础
一.Vue实例配置选项 选项 说明 data Vue实例数据对象 methods 定义Vue中的方法 components 定义子组件 computed 计算属性 filters 过滤器 el 唯一根 ...
最新文章
- JSBridge深度剖析
- webservice restful一个小例子
- js中cookic的存取
- [网络安全自学篇] 二十.Powershell基础入门及常见用法(二)
- 使用缓存防击穿,解决微信”被动回复用户消息”重试回复问题
- html css 学习笔记(1)背景相关
- 计算机web程序开发,基于WEB的计算机应用基础考试系统的开发与设计
- App应用之提交到各大市场渠道
- Swift语言中的#ifdef替换
- Office EXCEL 如何保留两位小数,四舍五入
- w7文件加密提示没启用服务器,win7文件夹设置密码没有密钥提示
- 两个经纬度偏角_[转载]根据两点的经纬度求方位角和距离,等
- 新闻传播专业的本科毕业论文,有哪些比较好的选题?
- 抽象数据类型 C++实现 计算复数 [(8+6i)*(4+3i)]/[(8+6i)+(4+3i)]= ?
- 俄勒冈大学计算机科学专业,俄勒冈大学计算机
- Software Testing - UI自动化测试设计规范
- java考了80多分,八省联考成绩出炉,学生们表示“有些崩溃”,你考了多少分
- 快速建立个性化网站【凡科建站】
- JVM虚拟机之调优命令
- GridView数据替换,数字按要求替换文字
热门文章
- java+log日志实例_java.util.log,使用3个不同的记录器实例/日志文件,获得.1.2等
- 架构高并发方案_架构 - 抖音微博等短视频千万级高可用、高并发架构设计
- linux整盘远程备份,linux实现自动远程备份(scp+ssh)
- 常用软件版本查看Windows下
- STS热部署,springboot项目中修改代码不用重新启动服务
- bzoj3514 Codechef MARCH14 GERALD07加强版 lct预处理+主席树
- java架构《并发线程中级篇》
- 这几天可能是长时间关注电脑,眼睛没有得到休息,所以就早上起来眼睛有点通...
- 黑马程序猿 IO流 ByteArrayInputStream与ByteArrayOutputStream
- 简单了解一下如何使用Spring框架里JDBC和事务