我正在研究AngularJS中的递归嵌套导航菜单。我有一个指令,它可以有任意数量的元素。看起来有点像这样:
<form>
<input type="url" name="link" value="http://jsfiddle .net/" pattern="[^\s]+" title="please dont use the white space :)" required>
<button type="submit">OK</button>
root-nav指令包含RootNav控制器,我无法从DOM中的child指令访问此控制器。父控制器拥有一组可以在子指令中使用的方法,但我无法访问它。我不想要冗余代码(复制/粘贴方法到子控制器)。
我不想这样做
sub-nav-tree指令编译模板,所以我很确定它的$ compile部分是坏人。
这是子指令中链接函数的一部分:
<root-nav>
<sub-nav-tree navData="menuItem">
</root-nav>
希望你们能帮我解决这个问题:)谢谢。
@Chandermani这里是子指令返回函数:
if (scope.menuItem && scope.menuItem.children && scope.menuItem.children.length > 0) {
$http.get('/markup/components/root-navigation/sub-navigation.html').then(function (response) {
el.replaceWith($compile(response.data)(scope));
});
}