gpt4 book ai didi

javascript - 在Controller的init函数中获取View组件

转载 作者:行者123 更新时间:2023-11-30 17:58:50 24 4
gpt4 key购买 nike

在sencha touch 2.2.1的controller的init函数中是否可以获取view组件?

如果我尝试下面的代码,我会得到所有 3 个日志的未定义:

refs: {
mainPanel: '#HomeView'
}
init: function(){
console.warn(this.getMainPanel());
console.warn(this.mainPanel);
console.warn(Ext.ComponentQuery.query('#getOffersButtonHomeView')[0]);
}

View 代码:

    Ext.define('DeviceAPIFramework.view.HomeView', {
extend: 'Ext.Panel',
xtype: 'HomeView',
id: 'HomeView',
requires: [
'Ext.Button',
'Ext.dataview.List'
],

config: {
items: [{
xtype: 'panel',
layout: 'hbox',
margin: '5 0 15 15',
items: [{
xtype: 'button',
text: 'Get Offers',
itemId: 'getOffersButtonHomeView',
id: 'getOffersButtonHomeView',
ui: 'confirm',
width: 150
}]
}, {

.....

这种情况有什么解决办法吗?

对于导航和显示面板,我使用 NavigationView(用于显示具有 xtype 的 View 的推送方法),我将其添加到 Ext.ViewPort。

最佳答案

我终于想通了 Controller 中有一个启动函数,它在 View 初始化后被调用。

launch: function() {
Ext.ComponentQuery.query('#getOffersButtonHomeView')[0].someMethod(someParameter);
},

关于javascript - 在Controller的init函数中获取View组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17536710/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com