实现目标:如果想要自定义一个函数,并且这个function不存在Vue中的内置事件,比如我要实现{绑定到元素上时就调用此函数,而不是通过某个动作而去触发它}
解决办法:Vue.directive //指令定义函数 可以直接搜索这个 查看更详细的文档
一、实际例子,实现背景图和屏幕高度一样:
HTML代码图如下:
js代码图如下【简写方法】:
二、demo简单演示:
html代码:
<div v-hello></div>
<!--v-hello 后面的hello 可以自己随便定义 也可以传参 v-hello:aaa 后面的"aaa"就是参数 -->
js详细指令:
Vue.directive('hello',{
bind(){
alert('指令第一次绑定到元素上时调用,只调用一次,可执行初始化操作');
},
inserted(){
alert('被绑定元素插入到DOM中时调用');
},
update(){
alert('被绑定元素所在模板更新时调用');
},
componentUpdated(){
alert('被绑定元素所在模板完成一次更新周期时调用');
},
unbind(){
alert('指令与元素解绑时调用,只调用一次');
}
});