Angularjs 嵌套指令元素不';不编译

Angularjs 嵌套指令元素不';不编译,angularjs,directive,Angularjs,Directive,我正在寻找有关嵌套AngularJS指令的帮助: 例如,我定义了一组自定义指令元素,包括container和item。我是这样安排的: <container> <item /> <item /> <item /> </container> 然后定义每一个。您可以从附加的JSFIDLE中看到,没有为嵌套项调用编译函数,但是当item元素移出容器时,它们会被调用(这表明编译函数本身没有问题) 为什么嵌套指令不触发编译事件

我正在寻找有关嵌套AngularJS指令的帮助:

例如,我定义了一组自定义指令元素,包括container和item。我是这样安排的:

<container>
  <item />
  <item />
  <item />
</container>

然后定义每一个。您可以从附加的JSFIDLE中看到,没有为嵌套项调用编译函数,但是当item元素移出容器时,它们会被调用(这表明编译函数本身没有问题)

为什么嵌套指令不触发编译事件

这大致基于Angular主页上的示例:


我无法理解为什么他们的孩子解析正确,而我的孩子解析不正确。

使用transclusion时,必须将
ng transclude
指令添加到模板元素之一。如果将
指令的模板更改为:

模板:“”,
一切都会成功的


PS:您的指令声明语法对于您正在执行的操作来说过于冗长,但在技术上是正确的。

当您使用transclusion时,您必须将
ng transclude
指令添加到模板元素之一。如果您将
指令的模板更改为:

模板:“”,
一切都会成功的


PS:您的指令声明语法对于您正在做的事情来说过于冗长,但在技术上是正确的。

谢谢Josh,这很管用。至于指令定义的冗长性,我对AngularJS是相当陌生的,所以我会包括所有内容,直到我掌握了可用的内容和所有内容。谢谢Josh,这很管用t、 至于指令定义的详细程度,我对AngularJS是相当陌生的,所以我会包括所有内容,直到我掌握了可用的内容和所有内容的含义。