vue怎么自定义指令??
最近看看vue中自定义指令,感觉vue的指令和angular1的指令相差较大
<script>
//指令钩子函数:
/*
bind 只调用一次,指令第一次绑定到元素的时调用
inserted 被指令绑定指令的元素插入 父节点的时候调用
update 被绑定的元素模版只要发生变化,就会触发(通过比较模板变化前后)
componentUpdated 被绑定元素所在模版完成一次更新周期时被触发
unbind 指令被解除绑定的时候
*/
/*
定义指令回调函数(钩子函数的几个参数的意义)
第一个参数:绑定指令的元素html
第二个参数:对象的形式输出,自定义指令的信息(指令名字,使用的名字,包括我们传入的值,我们可以利用这个参数,在钩子函数中进行相关操作),
第三个参数:输出绑定指令的元素的虚拟dom节点信息
*/
const selfcomponent={
template:`<div>
<p>自定义组件</p>
<input v-model="com"/>
<p v-my-dir="com">组件的内容:跟随变色</p>
</div>`,
//props:['color'],
data(){
return { com:'#ddd'}//给一个默认值
},
directives:{
"myDir":{//指令的名字
bind:function(el,binding,nodeDom){
console.log(binding);
console.log("bind");
el.style="color:"+binding.value;
},
inserted:function(){
console.log("instered");
},
update:function(el,binding,nodeDom){//每次在input中输入信息,都会触发这个函数
console.log("update");
el.style="color:"+binding.value;
},
componentUpdated:function(el,bindging,nodeDom){
console.log("componented");
},
unbind:function(el,binding,nodeDom){
console.log("unbind");
}
}
}
};
var app =new Vue({
el:"#app",
data:{
color:'red',
},
methods:{
},
components:{
selfcomponent
}
});
</script>
<div id="app">
<selfcomponent ></selfcomponent>
</div>
以上实现的效果是,在输入框输入颜色信息,例如:red,#ddd.....组件中的信息,会随着你输入的信息变色
当然也可以全局定义指令:
Vue.directive("mydirective",function(el,pra,a){
console.log(el);//将元素标签输出
console.log(pra);//议对象的形式输出,自定义指令的信息,(包括我们传入的值)
console.log(a);//以对象的形式输出,vue虚拟节点信息
//console.log(document.getElementsByTagName("li")[0].parentNode);
el.style="color:"+pra.value;
});
vue怎么自定义指令??的更多相关文章
- 最简单的方式理解Vue的自定义指令与混合
vue.js 自定义指令 钩子函数:bindinsertedupdatecomponentUpdatedunbind 钩子函数完整实例:html: <div id="hook-argu ...
- Vue.js自定义指令的用法与实例
市面上大多数关于Vue.js自定义指令的文章都在讲语法,很少讲实际的应用场景和用例,以致于即便明白了怎么写,也不知道怎么用.本文不讲语法,就讲自定义指令的用法. 自定义指令是用来操作DOM的.尽管Vu ...
- vue 通过自定义指令实现 置顶操作;
项目需求:要求当前项目每个页面滑到超出一屏的距离时,出现 backTop 按钮,点击则回到最顶端:俗称置顶操作: 因为涉及到的页面较多,每个页面都加肯定显得重复累赘,最终想到了 Vue 的自定义指令 ...
- Vue directive自定义指令+canvas实现H5图片压缩上传-Base64格式
前言 最近优化项目-手机拍照图片太大,回显速度比较慢,使用了vue的自定义指令实现H5压缩上传base64格式的图片 canvas自定义指令 Vue.directive("canvas&qu ...
- Vue.directive 自定义指令
一.什么是全局API? 全局API并不在构造器里,而是先声明全局变量或者直接在Vue上定义一些新功能,Vue内置了一些全局API,比如我们今天要学习的指令Vue.directive.说的简单些就是,在 ...
- vue中自定义指令
//vue中自定义指令 //使用 Vue.directive(id, [definition]) 定义全局的指令 //参数1:指令的名称.注意,在定义的时候,指令的名称前面,不需要加 v-前缀; 但是 ...
- Vue2.0 【第二季】第1节 Vue.directive自定义指令
目录 Vue2.0 [第二季]第1节 Vue.directive自定义指令 一.什么是全局API? 二. Vue.directive自定义指令 三.自定义指令中传递的三个参数 四.自定义指令的生命周期 ...
- Vue 3自定义指令开发
本文由葡萄城技术团队原创并首发 转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 什么是指令(directive) 在Angular和Vue中都有Direct ...
- vue.js自定义指令入门
Vue.js 允许你注册自定义指令,实质上是让你教 Vue 一些新技巧:怎样将数据的变化映射到 DOM 的行为.你可以使用Vue.directive(id, definition)的方法传入指令id和 ...
随机推荐
- su | sudo su | sudo -i
su <user> <user> <user> 需要输入user的密码,该命令改变user id,执行过后,以<user>中定义的用户运行shell,就 ...
- 搭建多master的saltstack环境
0.16.0版本的发布,带来了minion可以连接多Master的特性. 这种方式称为多master( multi-master )配置, 使环境中的SaltStack冗余.在这种配置下,Salt M ...
- C++:栈(stack)的模板类实现
1.基本概念 栈中的元素遵守“先进后出”的原则(LIFO,Last In First Out) 只能在栈顶进行插入和删除操作 压栈(或推入.进栈)即push,将数据放入栈顶并将栈顶指针加一 出栈(或弹 ...
- Oracle 常用系统包
一.DBMS_OUTPUT(用于输入和输出信息) 二.DBMS_JOB(用于安排和管理作业队列) 三.dbms_pipe(类似UNIX系统的管道) 四.dbms_alert(用于生成并传递数据库预警信 ...
- expdp/impdp 详细参数解释
任意可以使用expdp/impdp的环境,都可以通过help=y看到帮助文档. 1.expdp参数说明 2.impdp参数说明 3.expdp参数说明(中文) 4.impdp参数说明(中文) expd ...
- poj1273&&hdu1532
题解: 双倍经验 dinic模板题 然后ff过不了... 代码: #include<cstdio> #include<cstring> #include<algorith ...
- Map以及其子类
package com.Map; import java.util.Collection; import java.util.HashMap; import java.util.Iterator; i ...
- DRF中序列化器定义及使用
首先需要明白序列化和反序列化的定义及作用: 序列化是将程序语言转换为JSON/XML; 反序列化是将JSON/XML转换为程序语言; 对应到Django中,序列化即把模型对象转换为字典形式, 在返回给 ...
- New Concept English there (7)
27w/m Has it ever happened to you? Have you ever put your trousers in the washing machine and then r ...
- New Concept English there (2)Typing speed exercise
typing speed (11words/ seconds) our vicar ia always rising money for one cause or another, but he ha ...