代码之家  ›  专栏  ›  技术社区  ›  Catalin

击倒移动可观测阵列项目

  •  3
  • Catalin  · 技术社区  · 12 年前

    从…起 this question ,我知道如何向上移动项目:

    moveUp: function(category) {
        var i = categories.indexOf(category);
        if (i >= 1) {
            var array = categories();
            categories.splice(i-1, 2, array[i], array[i-1]);
        }
    }
    

    将项目向下移动的等效值是多少?

    1 回复  |  直到 9 年前
        1
  •  9
  •   alexmac    12 年前

    在此解决方案中,我删除了以下两项: index 定位,然后再次插入它们(第一个-下一个项目,第二个-移动项目):

    moveDown = function(number) {
        var i = self.numbers().indexOf(number);
        if (i < self.numbers().length - 1) {
            var rawNumbers = self.numbers();
            self.numbers.splice(i, 2, rawNumbers[i + 1], rawNumbers[i]);
        }
    }
    

    Demo

    推荐文章