Я пытаюсь организовать мой ExtJS javascript немного лучше.У меня есть ExtJS-объект, подобный этому:
Ext.define('QBase.controller.ControlModelConfigurationController', {
extend: 'Ext.app.Controller',
views: [
'ControlModelConfiguration'
],
init: function() {
console.log('Initialized ControlModelConfigurationController');
this.control({
'#testBtn': {
click: this.loadModel
}
});
},
loadModel: function() {
console.log('Load Model....');
var conn = new Ext.data.Connection;
conn.request({
url: 'partsV10.xml',
callback: function(options, success, response)
{
if (success)
{
alert("AHHH");
var dq = Ext.DomQuery;
var xml = response.responseXML;
var nodes = dq.select('part', xml,parent);
Ext.Array.forEach(nodes,handleNode);
}
}
});
},
handleNode: function(items) {
console.log(item.name);
}
});
Размещенный код выше не работает.Ext.Array.forEach (node, handleNode) вызывает проблемы.Вместо использования анонимной функции, такой как:
...
Ext.Array.forEach(nodes,function(item) {
console.log(item)});
}
...
Я бы хотел извлечь анонимную функцию как именованную внешнюю.К сожалению, я не могу понять правильный синтаксис для создания структуры кода, как показано выше.
Тем временем я понял, что размещение
function handleNode(item) {
{console.log(item)}
}
в самом конце файлаработает.Можно ли сделать метод handleNode объектом - «членом» контроллера?
Заранее спасибо
Крис