具体示例是具有一系列选项卡的“首选项”窗口,每个选项卡都包含一系列表单字段。这些选项卡或表单字段都不会在窗口之外重复使用,并且窗口本身只会有一个实例。使用单个项目配置意味着它有数百行长,难以维护。
My.Ns.PreferencesWindow = Ext.extend(Ext.Window, {
items: [
// A tab
{
items: [
// Form fields
{},
{},
{},
]
},
// A tab
{
items: [
// Form fields
{},
{},
{},
]
},
...
]
});
- 我不是在问如何组织一个大型 ExtJS 应用程序。我已经阅读了组织 ExtJS 项目的最佳方式和Saki 关于该主题的博客文章。
- 对每个项目进行 Ext.extend 并没有真正意义,因为它们不会被多次实例化。
- 将各种组件封装在仅返回项目 json 的“生成器”函数中,乍一看似乎是一种合理的方法。