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