【发布时间】:2014-07-18 23:03:19
【问题描述】:
我想要做什么:
有没有办法在 AngularJS 中使用元素数组来填充带有子元素的 div?
我希望能够拥有一个自定义元素数组,并且当我更新数组时,它会更新视图。每次我进行更新时,自定义元素的指令都需要$scope.$digest() 元素。
伪代码:
html
<div id="parent" ng-controller="parentCtrl" ng-bind-html="arrOfElems"></div>
Javascript
app.controller('levelCtrl', ['$scope', '$compile', '$element', function(scp, cmpl, elem) {
scp.arrOfElems = ['<ell></ell>', '<r-ell></r-ell>', '<sqr></sqr>'];
}]);
app.directive('ell', function() {
return {
restrict: 'E',
template: <div class="block"></div>
};
});
app.directive('rEll', function() {
return {
restrict: 'E',
template: <div class="block"></div>
};
});
app.directive('sqr', function() {
return {
restrict: 'E',
template: '<div class="block"></div>'
};
});
理想情况下,生成的 html 将是:
<div id="parent" ng-controller="parentCtrl" ng-bind-html="arrOfElems">
<ell>
<div class="block"></div>
</ell>
<r-ell>
<div class="block"></div>
</r-ell>
<sqr>
<div class="block"></div>
</sqr>
</div>
【问题讨论】:
标签: javascript arrays angularjs model-view-controller angularjs-directive