如何使用拖放applyFilter

时间:2014-11-14 21:39:55

标签: angularjs drag-and-drop

我试图理解这个jqyoui-draggable选项的正确语法。这是我尝试过的: jqyoui-draggable =" {animate:false,index:$ index,applyFilter:' myFilter'}"

如果我有范围函数myFilter,它会被调用,但我收到错误: 未捕获的TypeError:无法读取属性' 1'未定义的

所以它想在一些数组上运行,但我不知道如何将该数组作为参数传递给过滤器。我试过了: ' myFilter(anArray)' ' myFilter:anArray)' ' myFilter [anArray]'

全部生成错误: 未定义不是函数。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

我最终通过声明一个通过'onStart'函数设置的范围变量来解决这个问题,该函数将数组作为参数。我在filter函数中使用了这个scope变量。似乎工作比应该做的更多,但它确实有效。

在html标记中

jqyoui-draggable =“{onStart:'setDragTarget(myArray)',applyFilter:'myFilter'}”

在控制器中:

$ scope.dragTarget =''

$ scope.SetDragTarget - function(dragTarget){

$ scope.dragTarget = dragTarget; }

$ scope.myFilter = function(){  return $ filter('orderBy')($ scope.dragTarget,'fieldName');

}

就是这样!如果有更简单的方法,请随时发表评论。