update: <body> <div id="app"> <parent></parent> </div> <template id="parent"> <child1></child1> <child2></child2> </template> <template id="child1"> <p>1</p> </template> <template id="child2"> <p>2</p> </template> <script> Vue.component('parent',{ template:'#parent', components:{ 'child1':{ template:'#child1' }, 'child2':{ template:'#child2' } } }); var vm = new Vue({ el: '#app', data: { }, methods:{ } }) </script> </body> 简单搬一些你的代码,发现有报错, parent的template给个div把里面的标签都包起来吧
这里好像没涉及到嵌套组件吧,不显示第二个组件的问题楼上已经给你指出来了。 关于嵌套组件,可以参见官方文档,组件的章节里有说明,需要添加 name 属性。此外,如果是 A>B>A>B... 这样的嵌套方式,可能参见下面的例子: https://jsfiddle.net/hL04Lozq/ 这里的组件选项可以不加 name,注意一定要有一个控制结束嵌套的条件。
update:
简单搬一些你的代码,发现有报错, parent的template给个div把里面的标签都包起来吧
