Angularjs: ng-repeat-start и ng-repeat-end с внутренним ng-repeat

Привет, у меня есть простой пример использования ng-repeat-start и end и работает нормально, проблема возникает, когда я хочу добавить внутренний ng-repeat. Вот мой код

<tr ng-repeat-start="obj in rows" >
  <td ng-repeat="e in obj.row">{{e}}</td>
</tr>
<tr ng-repeat-end>
  <td colspan="4">{{obj.description}}</td>
<tr>

Внутренний ng-repeat в td-элемент не работает, я вижу комментарий ngRepeat, когда проверяю исходный код html, но элементы td не создаются.

<!-- ngRepeat: e in obj.row -->

Мое уродливое обходное решение (учитывая, что я знаю размер этого вектора):

<tr ng-repeat-start="obj in rows" >
  <td>{{obj.row[0]}}</td>
  <td>{{obj.row[1]}}</td>
  <td>{{obj.row[2]}}</td>
  <td>{{obj.row[3]}}</td>
</tr>
<tr ng-repeat-end>
  <td colspan="4">{{obj.description}}</td>
<tr>

Ответ 1

Я не уверен, используете ли вы angular 1.1.6 или нет, поскольку ng-repeat-start и ng-repeat-end пока недоступны в версиях 1.1.5 или 1.0.7.

Однако для этого вам не нужно использовать новые директивы. Вы можете просто реализовать его следующим образом:

<table>
    <tbody ng-repeat="obj in rows">
        <tr ng-repeat="e in obj.row">
            <td>{{e}}</td>
        </tr>
        <tr>
            <td colspan="4">{{obj.description}}</td>
        <tr>
    </tbody>
</table>

Вы можете использовать ng-repeat-start и ng-repeat-end, чтобы переопределить его, когда официально выпущена версия AngularJS 1.1.6.

Демо

Ответ 2

Вы можете использовать итерации на основе индексов, чтобы обойти это:

<tr ng-repeat-start="obj in rows" >
  <td ng-repeat="e in obj.row">{{obj.row[$index]}}</td>
</tr>
<tr ng-repeat-end>
<!-- ... -->

Ответ 3

Я думаю, что это может быть что-то не так с вашей структурой данных. Используя Angular 1.2.1, это работает для меня

<div ng-app="myApp" ng-controller="myCtrl">
    <div class="h" ng-repeat-start="val in data">{{val.title}}</div>
    <div ng-repeat="con in val.content">
        {{con}}
    </div>
    <div class="b" ng-repeat-end>footer</div>
</div>

См. jsFiddle