我面临一个问题,我的控制器refs
和返回的对象无效。并且通过无效,它返回一个对象,表示它即使在我正在使用它的过程中也没有被渲染。控制器返回未呈现的视图
在我的控制器中,我有一个ref,定义如下。
refs : [ {
ref : 'selectDeltaView',
selector : '[itemId=selectDeltaView]'
}]
,后来在我的控制器我使用创建的访问
this.getSelectDeltaView()
什么奇怪的是,在第一时间这一观点被提出,一个Ext.Window
里面只是正常访问此视图。但是,在第二次启动时,我得到的视图不会呈现。
this.getSeletDeltaView().rendered === false
阅读该文档了在煎茶看来,这只是将我的选择到Ext.ComponentQuery.query
功能。但是,如果我拨打Ext.ComponentQuery.query('[itemId=selectDeltaView]')
,我会得到一个数组,其中呈现的是单个元素。
我错过了什么?为什么我的控制器引用将无效数据返回给我。
更新
一些额外的细节不是在原来的文章中提到。我最初的假设是我的观点没有被破坏。但是,我在我的ondestory
和beforedestory
事件中有日志语句,并且可以确认在关闭窗口时我的视图正在被销毁。
最令人困惑的是,如果ref仅使用Ext.ComponentQuery.query
,为什么Ext.ComponentQuery.query
仅在窗口重新打开时返回一个视图,并返回正确的视图。我从下面的问题中了解到裁判会接受这个观点,但是这个观点已经不存在了,或者不应该。如果观点被破坏了,我可以强制控制者清除它的捕获吗?
如果一个缓存视图不再存在,'refs'将不会返回它,但找到新的视图。我认为还有其他事情正在发生。 –