<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<title>指令</title>
<!-- vue2 -->
<script src="https://cdn.jsdelivr.net/npm/vue@2"></script>
</head>
<body>
<div id="app">
<div>
<div v-hello="color">hello world</div>
</div>
</div>
</body>
<script>
// 指令,为了操作底层dom
// Vue.directive("hello", {
// // 指令的生命周期函数
// // inserted第一次插入父节点中时触发
// inserted(el, binding) {
// // el dom节点 el只是个形参,参数名可以是自定义,
// // binding 指令的参数 参数名自定义
// console.log("inserted第一次插入父节点中时触发");
// // 加个背景色
// // el.style.background = red;
// el.style.background = binding.value;
// },
// // 每次更新时触发
// update(el, binding) {
// console.log("update,每次更新时触发");
// el.style.background = binding.value;
// },
// });
// 简写
Vue.directive("hello", (el, binding) => {
console.log("创建和更新都会执行......")
el.style.background = binding.value;
})
// vue3名称有改变
/***
* created ----> 创建之后
* beforeMount ------> 挂载前
* mounted ------> 挂载后
* beforeUpdate ------> 更新前
* update ------> 更新后
* beforeUnmount ------> 解绑前
* unmounted ------> 解绑后
*
* 总结: 跟组件的生命周期差不多
*/
new Vue({
el: "#app",
data: {
color: "violet",
},
});
</script>
</html>
vue 指令
最新推荐文章于 2023-04-13 23:14:01 发布