Ext.Loader同步加载。我应该Ext.require()我的所有商店吗?

时间:2013-06-18 03:40:55

标签: extjs

我的应用中有20家商店。我正在调整和调整使用sencha build缩小我的应用程序。 调试时我看到很多[Ext.Loader]同步加载警告:

[Ext.Loader] Synchronously loading 'MyApp.store.Store1'; consider adding Ext.require('MyApp.store.Store1') above Ext.onReady

我的问题是,我应该在Ext.relication({..})之前包含一次我的所有商店Ext.requires(['MyApp.store.Store1'... StoreN]) ;或者我是否应该在使用该商店的类中仅包含要求:['MyApp.store.StoreX']。

2 个答案:

答案 0 :(得分:2)

商店应放在Ext.app.Application的stores configuration或特定控制器中。

然后,它们不仅在正确的时间加载,而且还在StoreManager中注册,以便您可以使用controller.getStore(storeId)访问它们。

答案 1 :(得分:1)

我可以设法摆脱所有警告而不经历每个文件并分析它的存储依赖性的唯一方法是添加Ext.require(['MyApp.store.Store1'...'StoreN']。

商店在我的应用中广泛使用,这就是为什么我认为要求它们ONCE比在每个使用它们的文件中要求它们更好更实用。

如果您发现此方法有任何缺点,请告诉我们!