Angular 包含
Angular Transclusion
看到这个plnkr
https://plnkr.co/edit/theggRtJlbFj1H4zVUKU?p=preview
使用 $compile 服务,我需要将 dirC 嵌套在 dirB 中。
输出应该是
DirB
DirC
我认为这是一个错误,因为 dirC 指令和控制器从未被触发,所以 Angular 小组说要使用嵌入。
好的,所以我使用了嵌入并且 dirC 和 dirB 从未添加到 DOM。
我错过了什么?
指令 C 包含在指令 B 中。但是两个模板中唯一可见的文本位于具有指令 ng-transclude
的 div 中。因此,文本内容被嵌入的 HTML 替换:在 <dir-b>
的情况下指令 C,在 <dir-c>
的情况下什么都没有。
这是您使用固定模板的示例,向您展示它工作正常:https://plnkr.co/edit/FRtMA3h0Caredc4staW8?p=preview
与 ng-view 一样,ng-transclude 是一个占位符,意思是:将此元素的内容替换为指令主体内的内容。
看到这个plnkr
https://plnkr.co/edit/theggRtJlbFj1H4zVUKU?p=preview
使用 $compile 服务,我需要将 dirC 嵌套在 dirB 中。 输出应该是
DirB
DirC
我认为这是一个错误,因为 dirC 指令和控制器从未被触发,所以 Angular 小组说要使用嵌入。
好的,所以我使用了嵌入并且 dirC 和 dirB 从未添加到 DOM。
我错过了什么?
指令 C 包含在指令 B 中。但是两个模板中唯一可见的文本位于具有指令 ng-transclude
的 div 中。因此,文本内容被嵌入的 HTML 替换:在 <dir-b>
的情况下指令 C,在 <dir-c>
的情况下什么都没有。
这是您使用固定模板的示例,向您展示它工作正常:https://plnkr.co/edit/FRtMA3h0Caredc4staW8?p=preview
与 ng-view 一样,ng-transclude 是一个占位符,意思是:将此元素的内容替换为指令主体内的内容。