<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script src="vue.js"></script>
<script>
// 自定义指令的钩子函数
// 1、bind:只调用一次事件
// 2、inserted:被绑定的元素插入到父类节点时调用
// 3、update:被绑定的元素模板里更新时调用
// 4、compontUpdated:被绑定的元素模板完成一次很小的周期时调用
// 5、unbind:只调用一次,在指令与元素解绑时调用
// Vue.directive("run",{
// bind:function(el,binding){
// el.innerHTML="指令"+binding.name
// }
// })
// 参数属性值
// el当前绑定自定义指令的标签
// binding对象获得标签下的参数 例如:v-run:h.a.b="msg"
// (1)binding.name:指令名称 例如:run
// (2)binding.value:获得属性里的值 例如:hello
// (1)binding.expresion:被绑定属性的名称 例如:h
// (1)binding.arg:调用vue的变量名称 例如msg
// (1)binding.modifiers:调用了属性的名称,返回一个对象 例如:{a:true;b:true}
window.onload=function(){
Vue.directive("run",{
bind:function(el,binding){
el.innerHTML="指令"+binding.name
}
})
new Vue({
el:"#app",
data:{
msg:"hello"
}
})
}
</script>
</head>
<body>
<div id="app">
<h1 v-run:h.a.b="msg">看看标签里的指令</h1>
</div>
</body>
</html>
自定义指令的钩子函数
最新推荐文章于 2024-05-14 16:06:10 发布