Angular 1.5嵌套组件

时间:2016-09-30 21:08:55

标签: javascript angularjs

我有一个容器组件,其中嵌套了2个其他控制器。我让他们这样设置 container -> component1container -> component2

我的思路是,我可以将HTML从我的页面转换到我的容器组件中。 <container> <component1></component1> <component2></component2></container>

然后在容器HTML <div ng-init="vm.init()" ng-transclude></div>

问题是,我的容器根本没有运行,我在其init函数中添加了一个控制台日志,并且没有运行任何代码。虽然component1和component2运行它们的init。

似乎是涵盖旧版角度版本的大量文档。这告诉我他们需要像<div ng-controller="parentController"> <div ng-controller="childController"></div> </div

那样嵌套

如何在1.5中将组件嵌套到彼此?

1 个答案:

答案 0 :(得分:0)

看起来问题是我试图将ng-init和ng-transclude放在同一个元素中。我的猜测是ng-transclude会覆盖它所在元素中的所有内容。

所以我将ng-init移动到另一个元素并且工作正常

<div ng-transclude ng-init="vm.init()"></div>

更改为

<div ng-init="vm.init()"> <section ng-transclude ></section> </div>