2013-12-20 55 views
0

我在ExtJs 4.1中創建了一個樹面板,並且該面板與存儲相關聯。我在變量中有一些JSON數據可用。如何通過單擊按鈕將其加載到樹存儲中。Laoding JSON數據轉換成Ext.data.Tree存儲點擊一個按鈕

Ext.define('User', { 
    extend: 'Ext.data.Model', 
    fields: [ 
     {name: 'id', type: 'int'}, 
     {name: 'name', type: 'string'}, 
     {name: 'phone', type: 'string', mapping: 'phoneNumber'} 
    ] 
}); 


var data = { 
    users: [ 
     { 
      id: 1, 
      name: 'Ed Spencer', 
      phoneNumber: '555 1234' 
     }, 
     { 
      id: 2, 
      name: 'Abe Elias', 
      phoneNumber: '666 1234' 
     } 
    ] 
}; 

//注意,我們是如何在讀者設置的「根」,以配合上述

var store = Ext.create('Ext.data.TreeStore', { 
    autoLoad: false, 
    model: 'User', 
    proxy: { 
     type: 'memory', 

    } 
}); 

我如何可以加載一個按鈕的點擊數據的數據結構?

+0

您是否試過該代碼? – Patrick

回答

-1

嘗試store.data = data,看來,有一個像「使用setData」沒有方法,只是嘗試store.data = data也許它會工作

0
var store = Ext.create('Ext.data.TreeStore', { 
    model: yourModel, // make sure the model fits 
    proxy: { 
     data : yourData, // this is your var with json 
     type: 'memory', 
     reader: { 
      type: 'json' 
     } 
    }, 
}); 

退房的答案在這裏:Load static data to Ext.data.TreeStore

要運行代碼在按鈕點擊,做到:

Ext.create('Ext.Button', { 
    text: 'Click me', 
    handler: function() { 
     // load the store 
    } 
}); 
-2

可以使用申通快遞單擊按鈕上的re.loadData方法。檢查文檔here

+0

它是一棵樹來加載。 – Patrick