自定义指令
- 使用Vue.directive()定义全局的指令v-focus
- 参数1 :指令的名称,注意,在定义的时候,名称前面不需要加 v- 前缀,但在调用的时候,必须在 指令名称前加上 v- 前缀来进行调用
- 参数2: 是一个对象,这个对象身上,有一些指令相关的函数,这些函数可以在特定的阶段,执行相关的操作。
- 常用的指令相关函数有bind, inserted, update。
- 在每个函数中,第一个参数,永远是 el ,表示被绑定了指令的那个元素,这个 el 参数,是一个原生的JS对象
- bind: 每当指令绑定到元素上的时候,会立即执行这个 bind 函数,只执行一次,样式相关的可以在bind中设置
- inserted: 元素插入到DOM中的时候,会执行 inserted 函数【触发1次】,和JS行为有关的操作,最好在 inserted 中去执行
- updated: 当VNode更新的时候,会执行 updated, 可能会触发多次
- font-weight是一种函数简写 方式
- 自定义全局和局部的自定义指令:
Vue.directive('focus', {
inserted: function (el) {
el.focus();
}
});
directives: {
color: {
bind(el, binding)