Я использую ExtJS 4 (бета 3), и у меня есть TreePanel, которая является моим видом меню навигации.
Это что-то вроде этого:
- Работа
- Добавить вакансию
- Список всех работ
- ...
(это будет сделано на основе системы разрешений, но это уже другая история)
В ExtJS 3 сделать что-нибудь, когда я нажал «Добавить задание», было так же просто, как добавить
...
leaf:true,
listeners:{
click:function(n){
//my code...
}
}
...
к корневым дочерним элементам.
Теперь это не так просто. Чем ближе я оказался (на древовидной панели)
listeners:{
click : {
element : 'el',
fn : function(eve, elem, obj){
console.log(node);
console.log(elem);
console.log(obj);
}
}
}
Так что, может быть, я просто нуб, может, у меня уже сильная ненависть к ExtJS, возможно, это просто проблема в этой бета-версии, но ...
Как добавить слушателя к событию click на узлах дерева? (событие Select не будет делать то, что мне нужно)
Спасибо, ребята.
РЕДАКТИРОВАТЬ: В настоящее время тестирование с этим, и он не работает.
... = Ext.create('Ext.tree.TreePanel', {
region : 'west',
collapsible : false,
title : 'ITMI',
width : 220,
margins : '5 5 5 5',
cmargins : '5 5 5 5',
hideHeaders : true,
useArrows : true,
rootVisible : false,
headers: [{
xtype : 'treeheader',
text : 'Nome',
flex : 1,
dataIndex: 'nome'
}],
store: store,
listeners:{
itemclick: function(n){
console.info(n);
}
}
...
EDIT 2: Событие itemclick теперь работает (в финале EXJS 4), оно все еще не решает мою проблему. Я хотел бы вызвать определенную функцию, когда я вызываю каждый триод. Раньше было действительно легко. Теперь я не могу понять это.