我正在尝试使用 angularJS 做一个递归菜单,但我不断收到错误消息:超过最大调用堆栈大小
我的指示:
angular.module("application").directive("navigation", [function () {
return {
restrict : 'E',
replace : true,
scope : {
menu : '='
},
template : '<ul><navigation-item ng-repeat="item in menu" submenu="item"></navigation-item></ul>',
link : function ($scope, elem, attrs) {}
}
}
]);
angular.module("application").directive("navigationItem", [function () {
return {
restrict : 'E',
replace : true,
scope : {
submenu : '='
},
template : '<li>{{ submenu }}<navigation menu="submenu.Children"></navigation></li>',
link : function ($scope, elem, attrs) {}
}
}
]);
我的控制器:
app.controller('myController', ['$scope', function (ng) {
ng.menu = [{
Id : 1,
Nome : "Contact",
Children : [{
Nome : "Testing",
Children : []
}]
}];
}
]);
这是我使用它的方式:
<navigation menu="menu"></navigation>