[英]this.SOMETHING always returns undefined - extjs
我有一个包含选项卡式面板的portlet。 在该面板中是一个图表。 在图表的功能之一中,我执行console.log(this)
并能够查看所有内容。 但是,我的主要目的是使用值this.ownerCt
,它表示它存在,但是当我尝试使用它或console.log时,它报告为未定义。 如果我执行this.id
或this.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.