简单理解vue中实例属性vm.$els
程序员文章站
2022-04-01 21:01:25
...
vue实例属性vm.$els到底是什么?有哪些需要注意的?具体请阅读本文。
不需要表达式
参数: id(必需)
用法:
为 DOM 元素注册一个索引,方便通过所属实例的 $els 访问这个元素。
注意:
因为 HTML 不区分大小写,camelCase 名字比如 v-el:someEl 将转为全小写。可以用 v-el:some-el 设置 this.$els.someEl。
我的理解:$els类似于document.querySelector('.class')的功能,可以拿到指定的dom元素。
Eg:
<div v-el:mainContainer></div>
var _dom = this.$els.maincontainer
注意:在取该dom元素时,不识别驼峰命名,如上例,绑定的值为mainContainer,但是在取dom的时候只能写maincontainer,否则将无法识别.
HTML代码:
<input type="text" class='name-input' placeholder='请填写项目名称' v-on:keyup.enter='saveProjectFun' v-el:addProject>
js代码:
//当用户按回车后,保存添加的项目 saveProjectFun:function(){ var obj={} obj.success=false; let name=this.$els.addproject.value; obj.projectName=name.replace(/\s+/g,""); this.projectData.push(obj); this.addp=true; }
其实 this.$els.addproject.value就相当于:document.querySelector('.name-input').value