Dragula angular как получить доступ к элементу модели
Как мне получить доступ к точной позиции модели, которая была перетащена и удалена с помощью события drop-model?
Описание события drop из документов:
el был удален в target перед элементом sibling и первоначально был из источника
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
У меня была такая же проблема и она была решена, добавив идентификатор элемента в элемент 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);
});