日期:2014-05-16  浏览次数:20801 次

姐发现extjs真是太难学了,谁能帮我详细解析下面代码中的①②③④⑤⑥⑦句的意思,70分相送。
Ext.onReady(function(){ ---------------①

  var loader = new Ext.tree.TreeLoader({dataUrl: '01-06-01.txt'});
  loader.processResponse = function(response, node, callback){ ---------------②
  var json = response.responseText;
  try {
  var json = eval("("+json+")");---------------③
  node.beginUpdate();
  var o = json["key"];---------------④

  for(var i = 0, len = o.length; i < len; i++){
  var n = this.createNode(o[i]);
  if(n){
  node.appendChild(n);
  }
  }
  node.endUpdate();
  if(typeof callback == "function"){---------------⑤
  callback(this, node);---------------⑥
  }
  }catch(e){
  this.handleFailure(response);---------------⑦
  }
  };
}

-------------------
①句中的onReady是什么含义?
②句中的processResponse是什么意思?
③句中的eval是什么意思?

⑥句中的callback是递归调用自己吗?
⑦句是什么意思?

------解决方案--------------------
1:onReady在ExtJs库文件及页面内容加载完后,ExtJs会执行Ext.onReady中指定的函数,因此每个用户的ExtJs应用都是从Ext.onReady开始的,相当于JAVASCRIPT中window.onload();

2:processResponse是loader对象下的方法,你也可以写成其它的名字。没有什么特别的意思

3:eval是将后台传递过来的JSON字符串转化为json对象,方便解析。

4:callback是processResponse函数执行成功后调用的回调函数

5:this.handleFailure(response);是出现异常执行的函数。