Angular指令模板不是由外部指令编译的

时间:2014-09-29 18:19:55

标签: angularjs angularjs-directive

我有简单的标签:

<form show-errors>
    <date-input />
</form>

你可以想象我有两个指令:showErrors和dateInput。

showErrors应该适用于由dateInput模板加载但从未发生过的DOM :( showErrors运行(DOM为空),然后dateInput加载其模板,但为时已晚。我有意思是以错误的方式使用指令:(

请详细了解我的plunker: http://plnkr.co/edit/3QEd1HvJETo30tZd1zl3

更新 我更新了我的plunker,它接收了所有关于来自URL的延迟加载模板。任何想法如何以角度清洁的方式解决?

2 个答案:

答案 0 :(得分:1)

首先,你的指令中有一个拼写错误:而不是dateinput应该有dateInput

但是,在指令中不可能从父母那里引用孩子。只允许在另一个方向上进行通信(通常使用控制器)。

答案 1 :(得分:1)

你犯了两个错误。

首先,你的内部指令应命名为dateInput:

app.directive('dateInput', function() {

其次,您需要明确关闭日期输入标记。

<date-input></date-input>

值得注意的是,AngularJS编译器无法解析

<date-input />