Я новичок в angularjs, и мне интересно, как это сделать ниже.
Раздел 1 - Подраздел 1 - Подраздел 2 - Подраздел 3
Раздел 2 - Подраздел 1 - Подраздел 2
Там, где пользователь может динамически добавлять дополнительные разделы и из этого раздела он может динамически добавлять дополнительные разделы. Кроме того, как я могу получить индекс конкретного элемента. Надеюсь, я объяснил это правильно. Заранее спасибо :)
Есть, вероятно, много способов сделать это, одним из них может быть инициализация массива для родительских секций и других для дочерних разделов. Ребенок будет знать, кто его родитель.
Смотрите рабочий плункер здесь: Демо
Два массива:
$scope.section = [{id: 1}, {id:2}];
$scope.subSection = [{id:1, parentId: 1}, {id:2, parentId: 1},{id:3, parentId: 2}];
Посмотреть:
<div ng-repeat="parent in section">
<span>Section {{parent.id}}</span>
<pre>
<div ng-repeat="child in subSection" ng-if="child.parentId == parent.id">
<span>SubSection {{child.id}}</span>
</div>
<button ng-click="addSubSection($index + 1)">Add SubSection</button>
</pre>
</div>
<button ng-click="addSection()">Add Section</button>
<div ng-repeat="section in sections">
{{ section.name }}
<div ng-repeat="subsection in section.subsections">
{{ subsection.name }}
</div>
<button ng-click="addSubsectionTo(section)">Add subsection</button>
</div>
<button ng-click="addSection()">Add section</button>