我想组织我的ExtJS JavaScript更好一点。我有一个像这样的ExtJS对象:代码结构与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(nodes,handleNode)会造成麻烦。而不是使用像这样的匿名函数:
...
Ext.Array.forEach(nodes,function(item) {
console.log(item)});
}
...
我想提取匿名函数作为命名的外部函数。不幸的是,我无法找出正确的语法来建立如上所示的代码结构。
同时,我也想通了,那把
function handleNode(item) {
{console.log(item)}
}
在文件的最后工作。是否有可能使handleNode方法成为对象 - 控制器的“成员”?
预先感谢
克里斯
嗨雷内,谢谢你的回应。你说得对,这是ExtJS做得更多的方法!我已经阅读了范围参数,但无法理解其基本含义。现在变得非常清楚。谢谢!! – Chris