gpt4 book ai didi

javascript - ExtJS Controller 中未调用 onLaunch 函数

转载 作者:行者123 更新时间:2023-12-02 19:45:19 25 4
gpt4 key购买 nike

我对 ExtJS 很陌生,我花了几个小时试图解决这个问题,但没有成功。我有一个带有“onLaunch”函数的 Controller ,但它从未被调用。

我将 Controller 的 .js 文件包含在应用程序“启动”功能中。这就是为什么我将 Controller 的“init”函数更改为“onLaunch”,我读到“init”在应用程序“launch”之前调用,“onLaunch”在之后调用。

我用“console.log”检查了我的 .js 文件已被读取,所以我不明白为什么“onLaunch”函数没有...

这里是 Controller 文件,代码非常简单,这是我的第一个应用程序,我想在开始之前尝试一些东西:

console.log('BROWSER CONTROL');

Ext.define('WSR.controller.BrowserControl', {

extend: 'Ext.app.Controller',

views: [
'Browser'
],

onLaunch: function() {
console.log('ONLAUNCH BrowserControl');

this.control({
'viewport > panel': {
render: this.onPanelRendered
},
'browser': {
selectionchange: this.onSelectionChanged
}
});
},

onPanelRendered: function() {
console.log('PanelRendered');
},

onSelectionChanged: function() {
console.log('SelectionChanged');
}
});

在 Firebug 控制台中,我可以看到“BROWER CONTROL”消息,但看不到“ONLAUNCH”消息。

有人可以帮助我吗?

最佳答案

您的代码只是定义了类(这就是Ext.Define方法的用途),但没有实例化它。您需要调用Ext.create在定义的类上实际创建一个实例。我怀疑你的 onLaunch 函数将会被调用。 (有关更多信息,请参阅我链接的 ExtJS 文档。)

关于javascript - ExtJS Controller 中未调用 onLaunch 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9940725/

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