누를 때 버튼을 포함하는 코드가 있습니다. 탭 배열에 새 탭을 추가합니다.AngularJS - 일부를 삭제 한 후 활성 탭셋을 설정하십시오.
<div class="btn btn-primary" ng-click="add()">Add</div>
$scope.add = function()
{
$scope.tabs.push({heading: 'new', content: 'ddddddd'});
$timeout(function()
{
$scope.active = $scope.tabs.length;
});
}
이어서, 어레이는 채워 뷰에 showd된다
$scope.remove = function(index)
{
$scope.tabs.splice(index, 1);
$scope.active = $scope.tabs.length;
}
문제가 있다는 것이다 : 또한
<uib-tabset active="active">
<uib-tab ng-repeat="tab in tabs" index="$index + 1">
<uib-tab-heading>{{ tab.heading }} - <a ng-click="remove($index)">remove</a></uib-tab-heading>
{{tab.content}}
</uib-tab>
</uib-tabset>
, 각각의 탭은이 함수를 호출 삭제 링크를 마지막으로 추가 한 탭이 아닌 일부 탭을 삭제하면 활성 탭과 인덱스가 동일하지 않습니다. 이 문제를 보여줄 수있는 plunkr이 있습니다. http://plnkr.co/edit/02Lll7oPYyvAxcKu5GkK?p=preview 알 수 있듯이 탭 (마지막에는 없음)이 삭제되면 "탭"및 "색인"변수가 동일하지 않습니다.
어떤 아이디어로주세요?
입니까? –
탭을 삭제할 때 새로운 활성 탭을 설정하지 않으려면 마지막 활성 탭을 선택하십시오. 문제는 탭을 삭제 한 후에 새 탭을 추가 할 때 발생합니다. 이 순간에 예,이 새 탭을 활성화하려고 합니다만 결과가 표시되지 않습니다 –