Model view controller 什么';ExtJS应用程序中嵌套的最大文件夹数是多少?

Model view controller 什么';ExtJS应用程序中嵌套的最大文件夹数是多少?,model-view-controller,sencha-cmd,Model View Controller,Sencha Cmd,事实证明我有一个ExtJS应用程序。“我的视图”文件夹结构(如果不是最好的)是: CE\app\view\process\Pre 好的,在这个文件夹中,我在一些其他文件夹中创建了一些组件,例如: CE\app\view\process\Pre\StudentData\Tabs\GeneralDataTab.js CE\app\view\process\Pre\StudentData\Tabs\AddressDataTab.js CE\app\view\process\Pre\StudentDa

事实证明我有一个ExtJS应用程序。“我的视图”文件夹结构(如果不是最好的)是:

CE\app\view\process\Pre

好的,在这个文件夹中,我在一些其他文件夹中创建了一些组件,例如:

  • CE\app\view\process\Pre\StudentData\Tabs\GeneralDataTab.js
  • CE\app\view\process\Pre\StudentData\Tabs\AddressDataTab.js
  • CE\app\view\process\Pre\StudentData\Tabs\SchoolDataTab.js
  • CE\app\view\process\Pre\ParentData\Common\DataPanel.js
我对所有这些组件的定义如下:

Ext.define("CE.view.process.Pre.StudentData.Tabs.GeneralDataTab", {
//some code to define and create my class
});
paths: {        
   //...
  'ProcessViews' : '../CE/app/view/process',
},
Ext.define("ProcessViews.Pre.StudentData.Tabs.GeneralDataTab", {
//some code to define and create my class
});
根据我的研究,我必须用原始文件夹结构命名我的班级,用点分隔

在我开发过程中,一切都很好,但一旦我执行SENCHA CMD BUILD来测试结果,就会出现以下错误:

找不到未定义的“选项卡”/“公共”未定义

我检查了很多次路径、名称,一切都正常

因此,我删除了最后的文件夹(选项卡/公用):

  • CE\app\view\process\Pre\StudentData\GeneralDataTab.js
  • CE\app\view\process\Pre\StudentData\AddressDataTab.js
  • CE\app\view\process\Pre\StudentData\SchoolDataTab.js
  • CE\app\view\process\Pre\ParentData\DataPanel.js
瞧!我的申请有效

在我运行
SENCHA CMD BUILD
之后,一切都发生了,因为即使是
SENCHA CMD BUILD TESTING
我也没有收到这个错误

你知道我不能在Sencha ExtJS应用程序中嵌套那么多文件夹结构吗

我知道我可以在应用程序的
路径
配置中定义路径。我尝试了这个,并重新命名了我的类,但它也不起作用

你觉得我做错什么了吗?这是Sencha CMD的一个bug吗?我使用的是4.0.1.45版

先谢谢你

编辑

我想让你知道我解决了这个问题,我希望这也能帮助你

事实上,问题不在于嵌套的文件夹,而在于类的名称

在我的
Application.js
文件中,我添加了一个新路径,如下所示:

Ext.define("CE.view.process.Pre.StudentData.Tabs.GeneralDataTab", {
//some code to define and create my class
});
paths: {        
   //...
  'ProcessViews' : '../CE/app/view/process',
},
Ext.define("ProcessViews.Pre.StudentData.Tabs.GeneralDataTab", {
//some code to define and create my class
});
现在我的课程名称如下:

Ext.define("CE.view.process.Pre.StudentData.Tabs.GeneralDataTab", {
//some code to define and create my class
});
paths: {        
   //...
  'ProcessViews' : '../CE/app/view/process',
},
Ext.define("ProcessViews.Pre.StudentData.Tabs.GeneralDataTab", {
//some code to define and create my class
});
现在我没有收到任何错误消息,应用程序运行正常

看起来类名不会那么长。如果需要,则应使用
Application.js
中定义的路径来缩短名称:


谢谢。

你到底想知道什么?关于嵌套文件夹结构或您的构建问题?我怀疑这是Sencha Cmd中的错误。很可能有些东西拼错了。运行应用程序时,请注意浏览器的JavaScript控制台,我敢打赌您会看到一条关于必须同步加载文件的警告或关于缺少某些内容的错误。嗨@MohitSaxena,我想知道的是ExtJS应用程序是否只支持一定数量的嵌套文件夹,或者类的名称是否不能太长。事实上,是我的文件夹结构引发了这个问题
sencha cmd build
运行时没有出现问题,但是由于嵌套了多个文件夹,它对结果的
app.js
做了一些奇怪的事情@arthurakay,我反复检查控制台,寻找关于同步加载的警告,但没有显示类似的消息。我确保所有课程都有他们的
要求
检查我编辑的帖子。我找到了这个异常问题的解决方法:)