<!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="./lib/vue.js"></script>
</head>
<body>
<div id="app">
<com1 @func="show"></com1>
// func可以自己定義
</div>
<template id="cont">
<div>
<h1>子組件的文本</h1>
<input type="button" value="這是子組件的按鈕,點擊子組件的按鈕可以訪問父組件的方法" @click="fuzujian">
</div>
</template>
<script>
var vm = new Vue({
el: "#app",
data: {
// 在父組件中定義自己的data數據,並讓子組件的調用自己的方法的時候,吧子組件傳遞過來的值,存到自己的data中
zizujiandezhi: null
},
methods: {
show(data) {
// console.log(data)
// console.log("子組件會通過this.$emit('自己定義的函數名進行調用')這是父組件的方法" + data)
this.zizujiandezhi = data
}
},
components: {
'com1': {
template: "#cont",
data() {
return {
person: { name: '熊熊' }
}
},
methods: {
fuzujian() {
this.$emit('func', this.person)
}
},
}
}
})
</script>
</body>
</html>

