ボタンを押したときにクリックしたボタンを含むコードがあります。タブ配列に新しいタブを追加します。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ご覧のとおり、タブ(最後はない)が削除されたとき、「タブ」と「インデックス」変数は同じではありません。
どのようなアイデアをお願いしますか?
のですか? –
タブを削除したときに、新しいアクティブなタブを設定したくない場合は、最後のアクティブなタブを表示するだけです。問題は、タブを削除した後に新しいタブを追加したときに発生します。この瞬間にはい、私はこの新しいタブをアクティブにしたいですが、結果は得られません –