Vue笔记四:Vue获取DOM元素和组件元素的方法
Vue获取组件元素
如果想使用哪个DOM元素,就给它加上ref属性,然后用$refs属性获取它的元素对象,示例如下: 全部代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Vue获取DOM元素的方法</title>
</head>
<body>
<div id="app">
<!-- 为h1添加ref属性,属性自定义 -->
<h1 ref="h1text">yoyo!这里是h1</h1>
<input type="button" name="单击" @click="btn" value="单击" />
</div>
<script src="js/vue.js" type="text/javascript" charset="utf-8"></script>
<script>
var vm=new Vue({
el:#app,
data:{
},
methods:{
btn(){
// 使用this.$refs.自定义属性,即可获取到我们刚刚定义到的标签
console.log(this.$refs.h1text)
}
}
})
</script>
</body>
</html>
运行:
ref获取组件元素
可在上一步代码基础之上进行修改 一共是三步 第一步:创建组件,声明数据和方法 第二步:为组件添加ref属性 第三步:通过$refs属性获取组件 全部代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Vue获取DOM元素的方法</title>
</head>
<body>
<div id="app">
<!-- 为h1添加ref属性,属性自定义 -->
<h1 ref="h1text">yoyo!这里是h1</h1>
<input type="button" name="单击" @click="btn" value="单击" />
<login ref="mylogin"></login>
</div>
<script src="js/vue.js" type="text/javascript" charset="utf-8"></script>
<script>
// 创建组件login
var login={
template:<div><h1>登录</h1></div>,
data(){
return {
// 声明数据
msg:子组件内容
}
},
methods:{
// 声明子组件的方法
show(){
console.log("子组件的方法")
}
}
}
var vm=new Vue({
el:#app,
data:{
},
methods:{
btn(){
// 使用this.$refs.自定义属性,即可获取到我们刚刚定义到的标签
console.log(this.$refs.h1text.innerText)
console.log(this.$refs.mylogin.msg)
this.$refs.mylogin.show()
}
},
components:{
login
}
})
</script>
</body>
</html>
运行
