butterfly Vue版本中,node在多个group之间拖来拖去,会报错,导致node消失

nfg76nw0  于 5个月前  发布在  其他
关注(0)|答案(6)|浏览(54)

The current behavior

抛出了一个这样的异常,
尝试定位:

_this5.actionQueueIndex 看到的可能是该元素越界

The expected behavior

node在多个group之间能反复拖动~

Your environment(such as: Butterfly version、Browser version、OS and so on)

Butterfly version :

Browser version :

OS :

Steps To Reproduce, Maybe you can provide a simple demo.

新建两个Group,一个node,然后随意拖动~

v9tzhpje

v9tzhpje1#

@Zt448143356 艾特一下大佬~

rbpvctlc

rbpvctlc2#

是的。我复现了这个bug。我查一下问题。感谢反馈。

qacovj5a

qacovj5a3#

好滴~ 然后还有个小问题,就是这里计算拖出的时候,

明明已经拖出了group,但是还是没调用removeMember方法,然后发现这里的_group.getWidth()和_group.getHeight(),取的有问题,但是这样写没问题

所以想请教下是我的用法有问题~ 还是说这里处理的不恰当~ 感谢~ @Zt448143356

6ss1mwsb

6ss1mwsb4#

好滴~ 然后还有个小问题,就是这里计算拖出的时候,

明明已经拖出了group,但是还是没调用removeMember方法,然后发现这里的_group.getWidth()和_group.getHeight(),取的有问题,但是这样写没问题

所以想请教下是我的用法有问题~ 还是说这里处理的不恰当~ 感谢~ @Zt448143356

这里我解决啦~ 改了下用法,但是这里还是建议考虑下我说的写法~ 嘿嘿嘿

332nm8kg

332nm8kg5#

好滴~ 然后还有个小问题,就是这里计算拖出的时候,

明明已经拖出了group,但是还是没调用removeMember方法,然后发现这里的_group.getWidth()和_group.getHeight(),取的有问题,但是这样写没问题

所以想请教下是我的用法有问题~ 还是说这里处理的不恰当~ 感谢~ @Zt448143356

这里我解决啦~ 改了下用法,但是这里还是建议考虑下我说的写法~ 嘿嘿嘿

vue中的默认的group是有问题的。宽高是定死的,没有个数据中的宽高匹配上(这个部分本应该根据数据来控制这个的宽高的)(这个就是导致你说这个错误的问题)
(底层是使用butterfly-dag,vue中为了数据驱动,用了一些hack的操作会导致一些问题)
在butterfly-dag中的计算是根据数据来计算的(_groups.getWidth()来获取宽度时没有问题),这部分没有问题(本应该画出来的宽度就是_groups.getWidth()这个的宽度),应该是vue去适配这部分,而不是去修改dag的代码来适配vue。
你前面提出的问题在直接使用butterfly-dag这个库是没有问题的。

关于vue中默认的group这个部分的内容,我在重写中。

euoag5mw

euoag5mw6#

好滴,明白啦,感谢~

相关问题