Использование CellTemplate UI-Grid в вариантах, как это:AngularJS - UI-Grid CellTemplate кнопки появляются дважды на свитке
field: 'isHflrReplaceable', displayName: 'Lead Replacement', width: 200, enableSorting: false, cellTemplate: hflrTemplate
шаблона выглядит следующим образом:
var hflrTemplate = '<div class="ui-grid-cell-contents">'
+ '<span class="hflr" ng-show="(row.entity.creditStatus == \'Credit Accepted\') || (row.entity.creditStatus == \'Credit Rejected\')">{{row.entity.creditStatus}}</span>' //IF status = Credit accepted or Rejected
+ '<span class="hflr" ng-show="(row.entity.creditStatus == \'Credit Pending\') && (row.entity.isHflrReplaceable == 1)"><button ng-if="row.entity.isHflrReplaceable == 1" ng-click="grid.appScope.setSelected(row.entity);" type="button" class="btn btn-default btn-xs" data-toggle="modal" data-target="#HFLRModal"><span class="fa fa-reply m-r-xs"></span>View/Edit</button></span>' //IF status = Credit Pending && can return
+ '<span class="hflr" ng-show="(row.entity.creditStatus == null) && (row.entity.isHflrReplaceable == 1)"><button ng-if="row.entity.isHflrReplaceable == 1" ng-click="grid.appScope.setSelected(row.entity);" type="button" class="btn btn-primary btn-xs" data-toggle="modal" data-target="#HFLRModal"><span class="fa fa-reply m-r-xs"></span>Request Replacement</button></span>' //IF status = null && can return
+ '</div>';
Правильные элементы показывают, как ожидалось. Список немного длинный ... ~ 200 или около того строк.
Когда я прокручиваю некоторую длину за порт представления, а затем создаю резервную копию, шаблоны охватывают только текст. Тем не менее, шаблоны, которые показывают, что кнопки имеют дополнительную копию той же кнопки. Фактически, кнопки продолжают добавлять к нему, когда я прокручиваю дальше от кнопки, а затем обратно к кнопкам. Я проверил DOM и каждый раз, когда я прокручиваю назад к кнопке, есть дополнительная кнопка. Что, черт возьми, происходит?
Примечание: я не манипулирую никакими данными, я просто прокручиваю представление таблицы с помощью полосы прокрутки.