<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script src="js/vue.js"></script>
</head>
<body>
<div id="app">
<!-- 引用DOM元素 -->
<input type="text" value='获取元素' @click="getElement" ref="mybtn">
<h3 id="myh3" ref="myh3"> 哈哈哈!!!!</h3>
<!-- 引用组件 -->
<login ref="mylogin"></login>
</div>
<script>
var login = {
template: '<h1>登陆组件</h1>',
data() {
return {
msg: 'son msg'
}
},
methods: {
show() {
console.log('调用了子组件的方法');
}
}
}
//创建Vue实例,得到 ViewModel
var vm = new Vue({
el: '#app',
data: {},
methods: {
getElement() {
//vue不建议操作DOM
// console.log(document.getElementById('myh3').innerText); //哈哈哈!!!!
//ref -->reference 引用
console.log(this.$refs.myh3.innerText); //哈哈哈!!!!
console.log(this.$refs.mylogin.msg); //'son msg'
this.$refs.mylogin.show(); //调用了子组件的方法 } }, components: { login } }); </script> </body> </html>