1

このようなストアが与えられた場合、実行時に は の代わりにstoreIdなります:App.store.EntitiesEntities

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'

どうすればこの問題を解決できますか? どこから始めればいいですか?

4

1 に答える 1