MobXは簡単で理解し易い点が一番の魅力だと思います。将来的に複雑になってしまっても耐えれるための下準備として、構成をどの様にすればよいのか?という疑問に、一つの手法を提案します。複雑といってもStoreの構成は、最初から最後まで、互いに疎結合なドメインモデルを並列に複数配備するだけです。 ドメインモデルとは何か? ここでは「特定の課題を解決する、メソッドを持ち合わせたデータソース」として解説します。粒度の目安としては、配列をひとつと、いくつかのオプションを保持しているぐらいの、小さなものです。 class Item { constructor ({ name = null, price = null, shop =null }) { this.name = name this.price = price this.shop = shop } } class DomainModel { @