AngularJS可在多列中进行排序

时间:2012-11-30 08:30:07

标签: javascript jquery jquery-ui angularjs

我正在尝试找到在Angular JS中执行类似JQuery排序的最佳方法。 我知道angular-ui中有sortbale指令,但我需要的是能够在多列中拖放项目。

在JQuery中,这是由$(el).sortable({connectWith: '.column'});

完成的

有没有办法在Angular中做到这一点?作为Angular新手,我不想使用JQuery可排序,因为我知道它不适合Angular模型(DOM在jQuery中被操纵,在Angular上下文之外,所以让它同步是很棘手的。)

2 个答案:

答案 0 :(得分:1)

您是否只是在寻找orderBy过滤器?

答案 1 :(得分:0)

您需要包含:

  1. JQuery
  2. jQueryUI的
  3. 您需要创建一个指令:

    directives.directive('sortable', function() {
        return {
            restrict: 'A',
            link: function(scope, element) {
                element.sortable({
                    connectWith: ".column",
                    start: function(event, ui) {},
                    stop: function(event, ui) {},
                    receive: function(event, ui) {}
                });
            }
        };
    });
    

    您需要应用指令:

    <div class="column" sortable></div>
    

    在上面的示例中,sortable可以与类列连接。