快速提问。
我有一个ng-repeat,我知道我可以使用orderBy来改变它们的顺序,但是我想拥有它以便如果有人点击它,它会将它与旁边的重复一个交换。这是我在伪代码中尝试做的一个例子:
<div ng-repeat="object in objects"
ng-click="swap position of object with the object next to it"></div>
这可能吗?我甚至无法弄清楚我背后会做什么的逻辑。我想也许可以从第一个获得距离然后从中减去一个?我真的很困惑。如果有人可以帮助我,我真的很感激。
提前致谢,
答案 0 :(得分:0)
我通过切换数组中的位置来解决它。这是我使用的功能:
$scope.move = function (arr, old_index, new_index) {
if (new_index >= arr.length) {
var k = new_index - arr.length;
while ((k--) + 1) {
arr.push(undefined);
}
}
arr.splice(new_index, 0, arr.splice(old_index, 1)[0]);
return arr;
};
也许这会对某人有帮助!