这篇文章主要介绍了vue中的ref和refs的使用,文中通过示例代码介绍的非常详细。
ref:被用来给元素或子组件注册引用信息,引用信息将会注册在父组件的$refs对象上。如果在普通的DOM元素上使用,那么指向的就是普通的DOM元素。
ref 有三种用法:
1、ref 加在普通的元素上,用this.ref.name 获取到的是dom元素 2、ref 加在子组件上,用this.ref.name 获取到的是组件实例,可以使用组件的所有方法。 3、如何利用 v-for 和 ref 获取一组数组或者dom 节点 普通的DOM元素上使用
<div id="app7">
<input type="text"ref="TEXT"/ >
<button @click="add">添加</button>
</div>
//欢迎加入前端全栈开发交流圈一起吹水聊天学习交流:864305860
var app7=new Vue({
el:"#app7",
data:{
},
methods:{
add:function(){
console.log(this.$refs);
}
}
})
复制代码
子组件上使用
<div id="app7">
<aaa ref=inputText></aaa>
<input type="text"ref="TEXT" >
<button @click="add">添加</button>
</div>
Vue.component('aaa',{
template:"<div>我是一个组件</div>"
})//欢迎加入前端全栈开发交流圈一起吹水聊天学习交流:864305860
var app7=new Vue({
el:"#app7",
data:{
},
methods:{
add:function(){
console.log(this.$refs.inputText);
console.log(this.$refs);
}
}
})//欢迎加入前端全栈开发交流圈一起吹水聊天学习交流:864305860
var aaa=app7.$refs.inputText;
//console.log(aaa);
//console.log(aaa.$el.innerText);
复制代码
refs只会在组件渲染完成之后生效,并且它们不是响应式的。这只意味着一个直接的子组件封装的“逃生舱”——你应该避免在模板或计算属性中访问 $refs 结语
感谢您的观看,如有不足之处,欢迎批评指正。