Dragula angular如何访问模型项

时间:2016-06-05 21:52:12

标签: angularjs dragula angular-dragula

如何使用drop-model事件访问拖放的确切模型项?

文档中的drop事件描述:

  在兄弟元素之前

el 被放入目标,并且最初来自来源

el 似乎返回拖动的HTML元素,但我需要对其后面的实际数据项执行操作。任何提示?

 <div class="collapse" id="manageUsers">
    <div class='containerDragula' dragula='"bag"' dragula-model='usersInProject'>
        <div ng-repeat='user in usersInProject' ng-bind='user.email'></div>
    </div>
    <div class='containerDragula' dragula='"bag"' dragula-model='usersNotInProject'>
        <div ng-repeat='user in usersNotInProject' ng-bind='user.email'></div>
    </div>
</div>

$scope.$on('bag.drop-model', function (e, el, target, source) {
    //this returns the html element
    console.log(el);
});

1 个答案:

答案 0 :(得分:4)

我遇到了同样的问题,并通过将项目的ID添加到HTML元素来解决它。

这样的事情:

<div id="{{ user.id }}" ng-repeat='user in usersNotInProject' ng-bind='user.email'></div>

在控制器中,我使用id:

查找项目
$scope.$on('bag.drop-model', function (e, el, target, source) {
    //getById is a function you implement (unless you already have it)
    console.log(usersNotInProject.getById(el.attr('id')).email);
});