<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<div id="app">
<div_box ref="box"></div_box>
</div>
<template id="div_box">
<div style="background-color: red;height: 200px;height: 200px;">
<button-counter></button-counter>
</div>
</template>
<template id="button_counter">
<button @click="btnClick">btn_{{count}}</button>
</template>
<script src="js/vue.3.2.2.js"></script>
<script>
const Counter = {
data(){
return{
count: 0
}
},
template:'#button_counter',
methods:{
btnClick() {
this.count++;
console.log("btnClick--$parent--"+this.$parent.msg);
console.log("btnClick--$parent.$parent--"+this.$parent.$parent.msg);
console.log("btnClick--$root--"+this.$root.msg);
}
}
}
const Box = {
data(){
return{
msg:"hello"
}
},
components: {
'button-counter':Counter
},
template:'#div_box'
}
// 1、创建Vue的实例对象
const app = Vue.createApp({
data(){//定义数据
return {
msg:'你好!'
}
},
components:{
'div_box':Box//,
// 'div_box2':Box2,
// 'div_box3':Box3
},
methods: {
}
}).mount('#app');
</script>
</body>
</html>