2016-09-14 39 views
-1

我正在使用d3js可摺疊樹網格來顯示節點,當我在plunker中運行代碼時,我得到一個奇怪的400錯誤請求錯誤。D3js可摺疊樹扔不好的請求

我已經取代了其獲取的JSON代碼和硬編碼直接將JSON象下面這樣:

var treeData ={"user_id":0,"name":"Root Node","children":[{"user_id":0,"name":"Flossie Hickman","children":[....]}]}; 

    // Calculate total nodes, max label length 
    var totalNodes = 0; 
    var maxLabelLength = 0; 
    // variables for drag/drop 
    var selectedNode = null; 
    var draggingNode = null; 
    // panning variables 
    var panSpeed = 200; 
    var panBoundary = 20; // Within 20px from edges will pan when dragging. 
    // Misc. variables 
    var i = 0; 
    var duration = 750; 
    var root; 

Link to Plunker

能否請您讓我知道我錯了。

+1

您鏈接般的魅力作品的plunker。另外,它包含你在上面提供的行嗎?你真正的問題是什麼? – elias

+0

@elias plunker提供錯誤的請求錯誤。請檢查此鏈接 - http://plnkr.co/edit/pmD1LILsNHaaEI4dADlo?p=preview 我提到的代碼存在於'dndTree.js'腳本文件中。 – zilcuanu

+0

你確定你正在鏈接你正在談論的項目嗎?我沒有收到錯誤的請求,我沒有看到dndTree.js文件,並且所有內容都很好地顯示,對我來說沒有任何問題。 – elias

回答

2

您的代碼在控制檯中不顯示任何錯誤。我通常不這樣做,但在這裏是爲了證明圖像:

enter image description here

不過,什麼也不會顯示出來。原因很簡單:你在呼喚你的腳本...

<script src="dndTree.js"></script> 

...的<body>,那就是你有這個div之前:

<div id="tree-container"></div> 

這是用於創建SVG股利:

var baseSvg = d3.select("#tree-container").append("svg") 

所以,這是正確的順序:

<body> 
    <div id="tree-container"></div> 
    <script src="dndTree.js"></script> 
</body> 

作爲一種良好的做法,請在腳本底部引用腳本。

這裏是工作plunker(我就是要強調「工作」):http://plnkr.co/edit/2aLPBuEXN9f6Tlwekdg5?p=preview

+0

您共享的重啓工作正常。你能幫我理解負責節點之間的線路長度和弧度的參數嗎?我需要更多的曲線和更少的長度。我對D3.js完全陌生 – zilcuanu

+0

由於這是一個不同的問題,請提出*另一個問題,解釋問題和期望的結果。 –

+0

請找到創建新問題的鏈接 - http://stackoverflow.com/questions/39492177/d3-js-collapsible-chart-increasing-the-arc-curve-radius – zilcuanu