我试图按照此链接中的建议来恢复删除操作:
德拉古拉:在ng2-德拉古拉中恢复下降
但没有成功。
我想做的是能够在某些条件下恢复拖动操作。或者,在条件下完全禁用德拉古拉。
目录:
.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; } });
}
}
如您所见,我正在尝试完全禁用移动,但这似乎没有任何效果。
您可以使用
此方法在条件下取消拖动操作:
if( yourCondition )
this.dragulaService.find('yourBagName').drake.cancel(true)
您的取消事件中发生的事情取决于您的行李选项,我使用这个:
this.dragulaService.setOptions('yourBagName', {
revertOnSpill: true
});
如果将此选项设置为您的行李,则取消事件将还原您的拖动操作。更多选项在这里: https://github.com/bevacqua/dragula#dragulacontainers-options