リストに角度で繰り返し表示されているフィルタがあると、UIソート可能なプラグインが正しく再生されないようです。ドラッグアンドドロップは意図したとおりには機能しません。UI-ng-repeatの角度フィルタで並べ替え可能
これは、これらの2つのフィドルで示されている:
まず:フィルタを持っています - ドラッグ&ドロップは場所に滞在しないでしょう。
http://jsfiddle.net/Lvc0u55v/2886/
HTML:
<div ng-controller="Controller">
<ul ui-sortable="sortableOptions" id="test" ng-model="items">
<li class="line" ng-repeat="item in items | filter: myFilter">
{{item.name}}
</li>
</ul>
</div>
JS:
var myApp = angular.module('myApp',['ui.sortable']);
myApp.controller('Controller', ['$scope', function($scope) {
$scope.name = 'Superhero';
$scope.items = [
{name: 'TEST'},
{name: 'TEST2'},
{name: 'TEST3'},
{name: 'TEST4'},
{name: 'TEST5'},
{name: 'TEST6'},
{name: 'TEST7'},
{name: 'TEST8'}
]
$scope.myFilter = function (item) {
return item.name !== 'TEST';
};
$scope.sortableOptions = {
opacity: '0.8',
axis: 'y',
tolerance: 'pointer',
}
}]);
第二:何のフィルターを持っていない - 意図したとおりに動作します。 SAME
JS、
HTML:
<div ng-controller="Controller">
<ul ui-sortable="sortableOptions" id="test" ng-model="items">
<li class="line" ng-repeat="item in items">
{{item.name}}
</li>
</ul>
</div>
http://jsfiddle.net/Lvc0u55v/2887/
私は彼らのgithubのレポ同様の問題を作成しますが、誰もがその周りに仕事を持っている場合は素晴らしいことです! docsで
ただし、このソリューションでは配列内の項目が削除されることを忘れないでください。 1つのスコープ配列と1つのjavascript配列を使用できます。元のデータはJavaScript配列にあります。 –