Angular嵌套指令仅渲染第一个子节点

时间:2016-03-18 17:21:28

标签: javascript angularjs

我有一个incompatible types: int cannot be converted to BigInteger指令,其中包含两个子指令parentfirst。我注意到只有第一个孩子被渲染。此外,如果我在第一个之前放置了一些任意的HTML标记,它们都会被渲染,但是如果我在之后放置它们那么它们就不会出现了。这是为什么?

请参阅jsfiddle

second

3 个答案:

答案 0 :(得分:6)

尝试使用它:

var app = angular.module("myApp", []);
app.directive("myParentDir", function() {
    return {
        restrict: 'E',
        template: '<my-first-child></my-first-child> <my-second-child></my-second-child>'
    };
});

从角度issues in github

  

自我关闭或void元素,因为html规范定义它们非常   特别是浏览器解析器。你不能自己做,所以对你来说   自定义元素你必须坚持非空元素()。

     

这不能改变角度。

答案 1 :(得分:3)

自定义标签没有叶标签,因此您必须使用:

{{1}}

答案 2 :(得分:1)

由于您使用自定义标记,因此需要关闭标记,因为 HTML规范不允许自动关闭标记。

template: '<my-first-child></my-first-child> <my-second-child></my-second-child>'

JSFiddle