0

我想看看你们如何处理这件事。在我们的 Ext.application 文件中,我们的模型、存储和控制器配置数组定义了所有模型,存储在我们应用程序的控制器中。唯一的问题是我们有这么多,以至于在这个文件中继续定义每一个真的很不守规矩,它只会变得臃肿。

有没有人对如何处理这样的问题有任何建议。我们虽然只是制作一个 javascript 文件来定义我们的数组。然后只需在配置对象中包含每个数组,如下所示:

Ext.application({
   models : MyApp.util.getModelsArray(),
   controllers: MyApp.util.getControllersArray(),
   stores: MyApp.util.getStoresArray()
})

有没有更好的方法,或者上面提出的建议是什么?

4

1 回答 1

1

我假设您知道您不必所有模型和商店都包含为应用程序配置;作为配置提供给控制器的模型和存储(和视图)将由控制器加载(当控制器由应用程序加载或动态加载时)。事实上,Ext.app.application继承自Ext.app.controller. 因此,当您在应用程序中定义控制器时,它们的存储和模型也会被加载。

考虑到封装性、可重用性和正确的面向对象思维,您应该真正定义控制器中的存储、模型和视图;并且在您的应用程序中仅包含您的应用程序方法所需的模型和存储。

那么,你有多少个控制器?如果您真的有“这么多”,您可能只想考虑只包括必要的控制器(即,当您的应用程序加载时立即需要的控制器)并让所有其他控制器按需加载。您可以在这个 SO answer中看到它是如何完成的。

于 2013-02-06T00:50:23.767 回答