项目中获取拓补图连线,发现两种获取方式的处理结果有所不同,在此记录下:
jsplumb.getAllConnections(); //获取全部连线
jsplumb.getConnections({souce: 'sourceID', target: 'targetID'}); //获取指定连线
项目中需要获取连线,然后修改连线或删除连线,两种方式处理的结果有所不同
一、getAllConnections():
getAllConnections返回的是浅拷贝的数组,对返回的连线数组进行循环遍历时,当遍历过程中删除了连线时,会破坏数组的循环。解决的办法是将返回的数组进行深拷贝再循环
二、getConnections():
getConnections返回的是新的数组,所以可以直接循环