1

我在使用 ExtJS MVC 时遇到问题,我不确定发生了什么,因为直到最近我还没有遇到任何问题,我的主应用程序看起来像这样

this.sApp = Ext.create('Ext.app.Application', {
        name: 'FileBrowser',
        appFolder: 'fileBrowserApp',
        controllers: ['BrowserController'],
        requires: ['Dashboard.Library'],
        dependencies: {
            css: [],
            js: []

无论如何,由于某种原因,应用程序正在错误的位置寻找控制器,而不是fileBrowserApp/controller/BrowserController' it tries to go to 'FileBrowser/controller/BrowserController.js由于某种原因它不再识别该appFolder属性,有人知道为什么吗?我正在使用 ExtJs 4.1。

编辑:让我尝试提出一个更具体的问题,为什么要Ext.app.Application尝试将name放入应用程序路径而不是appFolder? 我认为这不应该发生,是否有另一个可能导致这种情况的属性?

4

3 回答 3

0

用于Ext.application( config );创建您的应用程序。由于普通类没有appFolder属性(也没有控制器属性)。除非您有自己的实现,否则依赖关系不存在。

更新:

如果是这个问题,您需要参考应用程序,您可以像这样设置它:

var context= this;
Ext.create('Ext.app.Application', {
    name: 'FileBrowser',
    appFolder: 'fileBrowserApp',
    controllers: ['BrowserController'],
    requires: ['Dashboard.Library'],
    dependencies: {
        css: [],
        js: []
    }
    init: function() {
        context.sApp = this;
    }
});
于 2013-01-21T16:23:06.320 回答
0

我能够通过添加以下内容创建解决方法来解决此问题:

      init: function () {
            Ext.Loader.setPath('FileBrowser', '/fullPath/fileBrowserApp');
        },

仍然不确定,为什么上面的原始方式停止工作。

于 2013-01-22T17:26:53.040 回答
0

您可以通过在 App.JS 中添加代码来更新路径

Ext.Loader.setConfig({
    enabled: true,
    setPath: {
        'FileBrowser': '/fullPath/fileBrowserApp'
    }
});
于 2013-01-23T08:06:57.310 回答