前提:之前已经写过一篇1.1版本的问题,这里就不过多讲了(如果想要解决火狐低版本兼容,看那个就行)
这次主要讲的是和1.X版本的区别和一些其它问题
区别
- 参数名不同:以前的links=>lines (虽然现在links也可以展示,但在层级关系时,有一定问题,最好还是改了)
- 树形(tree)改变不了线条连接点(defaultJunctionPoint):但是你工具栏展示切换线条连接点的按钮时,又可以通过工具栏改变
我看了下源码,多了下面这块
我一直用的边缘样式,所以我这里直接改成border了
顺便再说一下,树形上下结构的时候,如果是其他连接点样式,把节点往上拖时看起来会像兄弟节点
原图:
拖动后:
甚至于:
就像这样,反正我觉得还蛮奇怪的 - node数据更严格了,以前他虽然说其他数据放data,但是我没放也可以用,现在你不在data里面就真的没了,吼吼
新问题
- dataUpdated这个方法根本用不了,告诉我没有这个方法
- 两个节点中间增加一个节点
方法1:本来我是先删除这个节点和下一个节点之间的连线,然后用appendJsonData加一个新节点,加两条线(连接这个节点和新节点,以及新节点和下一个节点),这样做能实现,但是问题是后面节点的位置固定了,新增之后无法改变
很怪,用refresh也不行,dataUpdated又用不了
方法2:新建两个空数组,一个装所有节点加新节点,一个装除了这个节点和下一个节点之间的连线,再加两条线。我直接setJsonData,后果是他好像不是重新渲染,他好像有缓存记录一样,新节点会出现在第二个节点旁边,然后再回归正常位置
不知道怎么完美解决,暂时做法就是我减少了回归的时间
改成50让他跳快一点,后续如果有好方法记得告诉我