角火与ui.sortable:将ng-repeat值传递给sortableOptions

时间:2015-03-17 03:40:21

标签: angularjs ng-repeat ng-sortable

我有一个基本的ng-repeat,其中任务是可排序的

 <div ng-sortable="sortableOptions">
 <div ng-repeat="task in todo">
 {{task}}
 ...

当任务被拖动并下垂时,它会在我的控制器中调用$ scope.sortableOptions。我想知道是否有人知道如何将任务对象传递给那个?我可以将其设置为函数或..

基本上,我想传递任务并更新todo固有的一个属性。

$scope.sortableOptions2 = {
    stop: function(event, ui) {
     // do something with the specific todo here
    });

}

谢谢你

1 个答案:

答案 0 :(得分:0)

如果你正在使用ng-sortable是的,你可以这样做,

<ul data-as-sortable="sortableOptions" data-ng-model="todo">
   <li data-ng-repeat="item in todo" data-as-sortable-item>
      <div data-as-sortable-item-handle></div>
   </li>
</ul>

在你的控制器中,

$scope.sortableOptions = {
    accept: function (sourceItemHandleScope, destSortableScope) {return boolean}//override to determine drag is allowed or not. default is true.
    itemMoved: function (event) {//Do what you want},
    orderChanged: function(event) {//Do what you want},
    containment: '#board'//optional param.
};

See the documentation here