显然1.5.0支持this.dragulaService.setOptions
而 2.1.1 不支持,相反,2.1.1 支持this.dragulaService.drop
订阅 1.5.0 没有。
Stackblitz 分叉 1.5.0 https://stackblitz.com/edit/ng2-dragula-base-rbfvbg?file=src%2Fapp%2Fapp.component.ts
Stackblitz 分叉 2.1.1 https://stackblitz.com/edit/ng2-dragula-base-yabai4?file=src%2Fapp%2Fapp.component.ts
需要注意的相关代码:
1.5.0(不工作)
(Error) https://i.stack.imgur.com/9AjqF.png:
无法调用类型缺少调用签名的表达式。类型
“EvenEmitter”没有兼容的调用签名。 (财产)
AppComponent.dragulaService:DragulaService
this.dragulaService.drop("dnd")
.subscribe(({ name, el, target, source, sibling }) => {
//content
}
1.5.0(工作中)
this.dragulaService.setOptions('dnd', {
moves: (el, source, handle, sibling) => !el.classList.contains('nodrag')
});
2.1.1(工作中)
this.dragulaService.drop("dnd")
.subscribe(({ name, el, target, source, sibling }) => {
//content
}
2.1.1(不工作)
this.dragulaService.createGroup("dnd", {
moves: (el, source, handle, sibling) => !el.classList.contains('nodrag')
});
(Error) https://i.stack.imgur.com/xN3PS.png:
'{moves: (el: any, source: any, handle: any,sibling: any) 类型的参数
任何)=> 布尔值; }' 不可分配给类型参数
“德拉古拉选项”。对象字面量只能指定已知的
属性,并且“Dragula Options”类型中不存在“moves”。
(参数)句柄:任意
请注意,虽然有一个迁移指南 https://github.com/valor-software/ng2-dragula/blob/master/MIGRATION-v2.md and 变更日志 https://github.com/valor-software/ng2-dragula/blob/master/modules/ng2-dragula/CHANGELOG.md确实如此state https://github.com/valor-software/ng2-dragula/blob/master/MIGRATION-v2.md#4-replace-setoptions-and-dragulaoptions-with-dragulaservicecreategroup 如何将 setOptions 替换为 create group https://i.stack.imgur.com/zLD2B.png。但在我的情况下它仍然不起作用。
有什么办法可以同时使用这两个功能吗?或者我错过了一些明显的事情?