我有一个使用ng2-dragula进行拖放的Angular2组件,如下所示:
@Component({
selector: 'my-comp',
directives: [
Dragula
],
viewProviders: [
DragulaService
],
template: `
<div class="my-div">
<div *ngFor="#item of items" [dragula]='"card-bag"' [dragulaModel]='items'>
...
</div>
</div>
`
})
我的问题:如果我创建多个“ my-comp”组件,则“ card-bag”中的项目无法在这些组件之间拖放(尽管它们具有相同的包名称)。这些项目只能在其拥有的组件内拖放。
我们是否有任何跨组件拖放的配置,或者这是ng2-dragula的限制?
谢谢。
如果不使用,[dragulaModel]
则只要viewProviders: [ DragulaService ]
在top / root组件中仅设置一次,在嵌套组件之间的拖放效果就很好。
请记住不要设置viewProviders: [ DragulaService ]
其他组件,因为它会为每个组件创建新实例。
编辑:最近我已经实现了使用ng2-dnd
npm包的给定方案。它比ng2-dragula更好,并提供容易的对象传递和其他功能。它可能会解决您的问题。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句