ExtJS MVC停止工作

时间:2013-01-21 15:12:27

标签: javascript extjs extjs4.1 extjs-mvc

我遇到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?我不认为应该发生这种情况,是否有其他属性可能导致这种情况?

3 个答案:

答案 0 :(得分: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;
    }
});

答案 1 :(得分:0)

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

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

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

答案 2 :(得分:0)

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

Ext.Loader.setConfig({
    enabled: true,
    setPath: {
        'FileBrowser': '/fullPath/fileBrowserApp'
    }
});