Dragula отключить перетащить, чтобы изменить порядок
Я использую эту удивительную библиотеку для функциональности перетаскивания. Драгула очень хорош в перетаскивании.
Одна вещь, которую я пытаюсь сделать, это отключить перетаскивание, чтобы изменить порядок в собственном контейнере. Но следует разрешить перетаскивание, если вы собираетесь сбросить в связанный / связанный контейнер.
например, следующие два тега div в качестве контейнеров
<div dragula="dropContainer" id="dropbag1" [(dragulaModel)]="bagOneModel">
<div *ngFor="let model of bagOneModel" class="col-sm-2 col-md-2 col-lg-2">
{{model}}
</div>
</div>
<div dragula="dropContainer" id="dropbag2" [(dragulaModel)]="bag2Model">
<div *ngFor="let model of bag2Model" class="col-sm-2 col-md-2 col-lg-2">
{{model}}
<!-- don't allow re ordering in this container -->
</div>
</div>
1 ответ
Решение
Очень легко создать что-то, что позволяет перетаскивать:
- От а до б
- от B до A и отключить
- изменить порядок внутри
- изменить порядок внутри B
В вашем name.component.ts
Вы должны добавить:
constructor(public dragulaService: DragulaService) {
dragulaService.createGroup('dropContainer', {
accepts: (el, target, source, sibling): boolean => {
if (!target || !source || (target === source)) {
return false;
}
return true;
}
});
}