Если вы используете достаточно свежую версию ExtJS, тогда я считаю, что использовать ViewModels и конфигурацию Selection гораздо проще для такого рода вещей.
Что-то вроде:
LeftMenuTree = new Ext.tree.TreePanel({
renderTo: 'TreeMenu',
collapsible: false,
height: 450,
border: false,
userArrows: true,
animate: true,
autoScroll: true,
id: 'testtest',
dataUrl: fileName,
bind: {
Selection: '{SelectedNode}'
},
root: {
nodeType: 'async',
iconCls:'home-icon',
expanded:true,
text: rootText
},
listeners: {
"click": {
fn: onPoseClick,
scope: this
}
"afterrender": {
fn: setNode,
scope: this
}
});
(Вам необходимо настроить ViewModel в TreePanel или собственном представлении)
Тогда, если вы используете ViewController и setNode является членом:
setNode: function(){
var nodeToSelect = // code to find the node object here
this.getViewModel().set('Selection', nodeToSelect);
}
Хорошая особенность подхода ViewModel заключается в том, что он, кажется, просто автоматически обрабатывает все проблемы рендеринга / загрузки данных.