繁体   English   中英

this.SOMETHING始终返回未定义-extjs

[英]this.SOMETHING always returns undefined - extjs

我有一个包含选项卡式面板的portlet。 在该面板中是一个图表。 在图表的功能之一中,我执行console.log(this)并能够查看所有内容。 但是,我的主要目的是使用值this.ownerCt ,它表示它存在,但是当我尝试使用它或console.log时,它报告为未定义。 如果我执行this.idthis.idname获得实际的ID。

问题:为什么会this.SOMETHING返回undefined如果在它的值this

一些代码花絮:这是console.log(this)

Ext.Class.newClass
  additionalCls: Array[2]
  body: Ext.Element.Ext.core.Element
  childEls: Array[1]
  collapseDirection: "top"
  componentCls: "x-panel"
  componentLayout: Ext.Class.newClass
  componentLayoutCounter: 3
  container: Ext.Element.Ext.core.Element
  dockedItems: Ext.Class.newClass
  el: Ext.Element.Ext.core.Element
  id: "stackedbarportlet-1055"
  itemId: "graph"
  items: Ext.Class.newClass
  ownerCt: Ext.Class.newClass
  xtype: "stackedbarportlet"

我拿了几个实例,但这是它的一般输出!

console.log(this.ownerCt)结果为: undefined

<script>

var t1="";
var t2;

if (t1===undefined)
{
alert("t1 is undefined");
}
if (t2===undefined)
{
alert("t2 is undefined");
}

</script>

如果运行t2未定义,可能this.ownerCt没有值

您可以在这里找到答案。 似乎有时console.log()调用被排队,并最终在当前语句结束之后被调用,因此它们的输出并不一定像代码中那样立即反映对象状态。

至少当我在自定义定义的ExtJS的存储中重写构造函数时,我遇到了类似的行为。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM