【发布时间】:2015-10-20 06:51:59
【问题描述】:
我希望对创建新的 xtypes 有所了解。我目前一直在为组成我需要的完整 UI 组件的每个部分创建一个新的 xtype,但我认为我可能过度设计它。
例如,如果我需要创建一个包含表单的窗口,该表单又包含一个字段集,我一直在创建一个单独的窗口(新 xtype)、一个表单(新 xtype)、一个字段集(新 xtype)并带来这些都使用 Items 数组。
当然,这允许我在另一个窗口中重复使用表单,因为它是一个单独的 xtype,并且字段集也可以重复使用。
所以我想只创建 1 个“xtype” - 窗口并使用 Items 放置我所有额外的位,而不是实际为这些项目创建单独的 xtypes。这是推荐的吗?
现在,我似乎至少有两个文件(窗口和组件,如表单、网格等)
我的新窗口 xtype 并没有真正做太多,它很空。它只是添加我创建的新 xtypes。
我认为它归结为创建 1 个 xtype 并将我所有必要的组件直接放在此文件中,因此我将有 1 个窗口“AddCustomerWindow”或采取另一条路线,在那里我至少有 2 个文件(有时更多)我会有一个 AddCustomerWindow、AddCustomerForm、AddCustomerFieldset
【问题讨论】:
-
虽然将这些物品放在物品中肯定会有点不整洁。也许我可以在 InitComponent 和一些返回每个部分的函数中实现 Ext.Apply ....,例如“getForm”、“getFormFields”、“getButtons”等——好选择吗?
-
我想你的意思是新的 xtype - 新的类。仅为可重用组件创建单独的类,如果您有仅在一个视图中使用的表单,那么创建单独的类是不好的做法。在可能的情况下尝试使用 xtypes(自创组件或 extjs-native)——它会对性能产生积极影响,而组件只有在需要时才会实际创建
-
没有正确或错误的答案。为您的项目做任何“有意义”的事情。您不希望在单个类下拥有大量配置对象,但您可能也不希望为您使用的每个组件创建一个新的子类。以你认为合适的方式平衡它。
标签: javascript extjs extjs4 extjs4.2 extjs5