我试图按照此链接中的建议还原删除操作:
Dragula :revert drop in 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; } });
}
}
如你所见,我试图完全禁用move,但这似乎没有任何效果。
最佳答案
在以下情况下,可以使用此方法取消拖动操作:
if( yourCondition )
this.dragulaService.find('yourBagName').drake.cancel(true)
取消活动中发生的事情取决于您的包选项,我使用此选项:
this.dragulaService.setOptions('yourBagName', {
revertOnSpill: true
});
如果将此选项设置为您的行李,则取消事件将还原拖动操作。
更多选项:https://github.com/bevacqua/dragula#dragulacontainers-options