このようなストアが与えられた場合、実行時に は の代わりにstoreId
なります:App.store.Entities
Entities
Ext.define('App.store.Entities', {
extend: 'Ext.data.Store',
storeId: 'Entites',
ドキュメントには次のように記載されています。
コントローラーによってストアが開始されると、storeId はストアの名前によってオーバーライドされることに注意してください。
これは、コントローラーでストアが必要な場合にのみ当てはまるわけではありません。
stores: ['App.store.Entities'],
で非同期に作成された場合も
this.getStore('App.store.Entities')
これはすべて予想される動作ですが、この動作がいずれかの使用を強制するという事実は好きではありません
- 完全修飾名
App.store.Entities
- または、その厳格な命名規則とディレクトリ構造に固執します。
問題
私が抱えている問題は、アプリが非常に大きくなり、すべてのstore
定義を 1 つのstore
フォルダーに入れることができなくなったことです。次のようなフォルダ構造になるようにリファクタリングしたいと思います。
/app
/plugin1
/store
/Settings
/Details
/model
/view
/plugin2
/store
/Items
/Settings
/model
/view
. _ storeId
_ 'plugin1.Settings'
_'App.plugin1.store.Settings'
どうすればこの問題を解決できますか? どこから始めればいいですか?