2017-06-09 16 views
0

我有一個現有的樹,它構建的JSON具有3級的層次結構。Fancytree延遲加載異常:聲明失敗:期望的兒童數組

根 - > ChildLevel1 - > ChildLevel2(懶惰=真)

以上樹數據加載作爲頁面加載源,一切都在這個point.Now工作正常 - 在childlevel2我試圖填補飛孩子這樣:

lazyLoad: function (event, data) {    
       var json = "{children:[ {\"title\": \"Sub item\", \"lazy\": true }, {\"title\": \"Sub folder\", \"folder\": true, \"lazy\": true } ]}"; 
       data.result = json; 
      } 

我不斷收到以下異常:

Uncaught Error: Fancytree assertion failed: expected array of children at Function.error (jquery-1.12.4.min.js:2) at _assert (jquery.fancytree.js:82) at jquery.fancytree.js:3242 at i (jquery-1.12.4.min.js:2) at Object.add [as done] (jquery-1.12.4.min.js:2) at Fancytree.nodeLoadChildren (jquery.fancytree.js:3229) at Fancytree._callHook (jquery.fancytree.js:2289) at FancytreeNode.load (jquery.fancytree.js:1229) at Fancytree.nodeSetExpanded (jquery.fancytree.js:3965) at Fancytree.nodeToggleExpanded (jquery.fancytree.js:4230)

回答

1

你是p分析定義對象的JSON字符串,但該插件需要一個「一組兒童」。試試:

lazyLoad: function (event, data) {    
    var res = [ 
    { title: "Sub item", lazy: true }, 
    { title: "Sub folder", folder: true, lazy: true } 
    ]; 
    data.result = res; 
}