これを行うための実際のデフォルトの方法はありません。あなたがしなければならないことは、ツリーと同じモデルを使用するページに空のストアを作成することです。これは次のように非常に簡単です。
var mySortStore = Ext.create("Ext.data.Store", {
model: "MyTreeStore",
data: []
});
次に、ノードをツリーに追加するときに、代わりに次の関数を使用します。
function addNodeSorted(node, childToBeAdded){
//clear the store from previous additions
mySortStore.removeAll();
//remove old sorters if they are dynamically changing
mySortStore.sort();
//add the node into the tree
node.appendChild(childToBeAdded);
var cn = node.childNodes,
n;
//remove all nodes from their parent and add them to the store
while ((n = cn[0])) {
mySortStore.add(node.removeChild(n));
}
//then sort the store like you would normally do in extjs, what kind of sorting you want is up to you
mySortStore.sort('height', 'ASC');//this is just an example
//now add them back into the tree in correct order
mySortStore.each(function(record){
node.appendChild(record);
});
}