2011-12-05 1 views

답변

12

메모리 프록시를 사용하여 TreeStore 인스턴스를 만든 다음 저장소의 ROOT NODE를 가지고있는 정적 데이터로 설정하십시오.

Ext.define('Task', { 
    extend: 'Ext.data.Model', 
    fields: [ 
     {name: 'task', type: 'string'}, 
     {name: 'user', type: 'string'} 
    ] 
}); 

var store = Ext.create('Ext.data.TreeStore', { 
    model: 'Task', 
    proxy: { 
     type: 'memory' 
    }, 
    folderSort: true 
}); 

var data = { 
    "text":".", 
    "children": 
     [ 
      { 
       task:'Project: Shopping', 
       user:'Will', 
       iconCls:'task-folder', 
       expanded: true, 
       children: 
       [ 
        { 
         task:'Housewares', 
         user:'Will', 
         iconCls:'task-folder', 
         expanded: true, 
         children:[ 
          { 
           task:'Kitchen supplies', 
           user:'Alpha', 
           leaf:true, 
           iconCls:'task' 
          }, 
          { 
           task:'Groceries', 
           user:'Bravo', 
           leaf:true, 
           iconCls:'task' 
          } 
         ] 
        } 
       ] 
      } 
     ] 
    }; 

var rootNode = store.setRootNode(data); 
3

TreeStore에 data 대신 root가 있습니다.

+0

한 것은 4.2.1.883''는 ExtJS를 사용. – leaf

5

는 또한 수행 할 수 있습니다

var store = Ext.create('Ext.data.TreeStore', { 
    model: tree_model, 
    // normally the data object would go here 
    proxy: { 
     data : data, // instead it goes here 
     type: 'memory', 
     reader: { 
      type: 'json', 
     } 
    }, 
});