父组件和子组件
我们先来看以下的例子:
我们有两个组件,一个是school,一个是student
school组件嵌套student
下面的例子有几个注意点:
1.因为代码是从上往下执行,所以student 组件要在前面,school组件要在后面,因为school组件里面使用components引入了students
2.容器中只能写
3.组件school中的template要引用
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>Document</title></head><body><div id="app"><school></school></div><script type="text/javascript" src="./vue.js"></script><script type="text/javascript">const student = {template: `<div>{{ studentname }}</div>`,data() {return {studentname: "代亮",}},}const school = {template: `<div>{{ schoolname }}<student></student></div>`,data() {return {schoolname: "苑庄小学",}},components: {student}}new Vue({el: "#app",components: {school}})</script></body></html>
然后我们使用Vue的插件看一下
我们可以看到如下层级结构

一般开发经验,我们会创建一个app组件,vm只需要管理app组件,剩下的都去嵌套管理
当然我们还可以通过在vm中写template,而不是在容器中
<div id="app">
<school></school>
</div>
....
new Vue({
el: "#app",
components: {
school
}
})
修改如下
<div id="app">
</div>
...
new Vue({
template: `<school> </school>`
el: "#app",
components: {
school
}
})
