Отменить падение Ng2 Драгула
Я пытался следовать советам по этой ссылке, чтобы отменить действие удаления:
Dragula: отменить падение в ng2-dragula
но безуспешно
То, что я хочу сделать, это иметь возможность отменить операцию перетаскивания при определенных условиях. Кроме того, при условии, отключите Dragula вообще.
Html:
файл.ts
export class VisibilityConfiguratorComponent implements OnChanges {
colsCopy: ColumnItem[];
constructor(private dragulaService: DragulaService) {
let drake = dragulaService.drop.subscribe((value) => {
this.applyConfig();
});
}
ngOnInit() {
this.dragulaService.setOptions('bag', { moves: (el, container, handle) => { return false; } });
}
}
Как видите, я пытаюсь полностью отключить движение, но, похоже, это не дает никакого эффекта.
1 ответ
Вы можете использовать этот метод для отмены операции перетаскивания при ваших условиях:
if( yourCondition )
this.dragulaService.find('yourBagName').drake.cancel(true)
То, что происходит в вашем событии отмены, основано на опциях вашей сумки, я использую это:
this.dragulaService.setOptions('yourBagName', {
revertOnSpill: true
});
Если эта опция установлена для вашей сумки, событие отмены вернет вашу операцию перетаскивания. Дополнительные параметры здесь: https://github.com/bevacqua/dragula