当前位置: 首页 > article >正文

vue2+3 —— Day5/6

自定义指令

自定义指令

需求:当页面加载时,让元素获取焦点(一进页面,输入框就获取焦点)

常规操作:操作dom “dom元素.focus()”

获取dom元素还要用ref 和 $refs 

<input ref="inp" type="text">

mounted(){

        this.$refs.inp.focus()

}

处在mounted这个钩子时,模板已经渲染完了

全局注册指令

所有组件内均可使用

语法:

Vue.directive('指令名',{

        "inserted" (el) { 

                el.focus()

         }

}) 

inserted:指令的生命周期钩子;指令所绑定的元素被添加到页面时会自动调用

el是指令所绑定的元素

局部注册指令

只能在所在组件内使用 

语法:

directives:{

        "指令名":{

            inserted() {

                  el.focus()

            }

        }

}

使用:<input v-指令名 type="text">  


指令的值

需求:实现一个color指令 —— 当传入不同颜色的时候,标签的文字颜色也跟着变成对应的颜色

语法:

  • v-指令名 = "指令值" (通过等号绑定指令的值)

<div v-color = "color">我是内容</div>

  • binging.value 拿指令值
  • 通过update钩子,监听指令值的变化,进行dom更新操作 (数据变化,视图自动更新)

directives:{

        color:{

                inserted (el,binding) {

                        el.style.color = binding.value

                },

                update (el,binding) {

                        el.style.color = binding.value

                }

        }

}

el:指令所绑定的元素 

update:指令值修改时会触发update函数



http://www.kler.cn/a/398416.html

相关文章:

  • 算法日记 26-27day 贪心算法
  • 【MySQL】InnoDB内存结构
  • SOP搭建:企业标准化操作程序构建与实施指南
  • 【ict基础软件赛道】真题-50%openGauss
  • MySQL缓存使用率超过80%的解决方法
  • CentOS7.9 源码编译 FreeSWITCH 1.10.12
  • 金融行业国产数据库容灾建设五大难点及解决方案
  • Web3D 与 AI 的结合重塑虚拟世界与智能应用
  • mysql 示例验证demo
  • 多目标优化算法:多目标红嘴蓝鹊优化算法(MORBMO)求解ZDT1、ZDT2、ZDT3、ZDT4、ZDT6,提供完整MATLAB代码
  • 卡尔曼滤波器
  • 调用门提权
  • 两个方法,取消excel数据隐藏
  • 深度学习面试题三
  • C++《类和对象中》:拷贝构造和赋值重载 + 运算符重载详解
  • DimensionX 部署笔记
  • 关于mysql中的锁
  • 策略模式-策略模式在不同支付工具中的应用
  • 【HarmonyOS】鸿蒙系统在租房项目中的项目实战(二)
  • 悬浮窗,ViewPager2内嵌套RecyclerView,RecyclerView高度异常的问题分析
  • 学习threejs,使用第一视角控制器FirstPersonControls控制相机
  • GOOGLE EARTH ENGINE——利用GEE计算和下载雪的覆盖频率(SCF)和雪的消失日期(SDD)含全球除格陵兰岛外的矢量
  • 探索C++三大特性--C++ 继承详解:从概念到高级用法
  • 每日OJ题_牛客_NC114旋转字符串_C++_Java
  • STM32 | 空气净化器
  • 构建安全可靠的人工智能数据中心的关键因素