Files
ClassContent/历届学生/font-end-nine/项目练习/学生项目/冯文焌/8vue/组件.html
2024-09-27 02:06:13 +08:00

77 lines
1.7 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<div class="app">
<v-header @change="getData"></v-header>
测试文字
<f></f>
</div>
</body>
<!-- <script src="https://cdn.jsdelivr.net/npm/vue@2.6.14"></script>不会报错的 -->
<script src="https://cdn.jsdelivr.net/npm/vue@2.6.14/dist/vue.js"></script>
<script>
Vue.component('v-header',{
template: `
<h2 @click="submit">{{title}}</h2>
`,
// props:['title'],
props:{
title:{
// 默认值
default:'这是默认标题大大大',
//限制输入的类型
type:String
}
},
data(){
return{
list:"这是子组件的数据啊啊啊啊 "
}
},
created(){
console.log("公告头部的生命周期");
console.log(this.$parent.$data.text);
},
methods:{
submit(){
this.$emit("change",this.list)
}
}
})
//局部组件
var footer = {
template:`
<h2>{{title}}</h2>
`,
data(){
return{
title:'公告底部'
}
},
created(){
}
}
new Vue({
el:'.app',
data:{
text:''
},
methods:{
getData(val){
console.log('这是父组件的数据',val);
}
},
components:{
"f":footer
},
})
</script>
</html>