簡體   English   中英

刪除少數節點后D3 SVG轉換問題

[英]D3 SVG transition issue after deleting few nodes

我在這個jsfiddle面臨着一個奇怪的問題。 如果我刪除幾個現有節點並稍后添加新節點,則節點的轉換不會保持不變。

這種情況很好

  1. 運行jsfiddle。
  2. 單擊reset按鈕
  3. 選擇連接到其他幾個節點的ctee節點並拖動。
  4. 所有連接的節點應遵循主拖動節點。
  5. 看看下面的截圖,連接到ctee節點的節點也隨着ctee一起移動。

連接的節點隨主節點移動

這種情況有問題 (唯一不同的是我們將首先刪除節點,然后單擊reset按鈕):

  1. 運行jsfiddle。
  2. 右鍵單擊GW節點,然后選擇Stop
  3. 這將從屏幕上刪除節點。
  4. 現在單擊reset按鈕
  5. 選擇連接到其他幾個節點的ctee節點並拖動。
  6. 理想情況下,所有連接的節點應遵循主拖動節點,但不起作用。 連接的節點保持原始位置。
    1. 查看以下屏幕截圖, ctee節點的連接節點ctee一起移動。

拖動節點時連接的節點不移動

問題看起來就像當您刪除節點時,您正在創建對與您的強制布局不同步的links的新引用:

links = links.filter...

要解決這個問題,你可以簡單地添加: force.links(links); 到它之后的行更新力布局的參考。

更新小提琴: https//jsfiddle.net/r1tcj0mf/16/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM