編集可能な Redux 転置グリッド

TransposedGrid は通常、グリッドを介してユーザーが行った変更を基に、基になるデータ配列を更新します。このアプローチは、Redux のような状態管理システムでは機能しません。これらのシステムではデータの不変性が求められるためです。

この問題は、ImmutabilityProvider 拡張コンポーネントを使用することで解決できます。このコンポーネントは TransposedGrid コントロールにアタッチされ、Redux ストアからのデータ配列にバインドされることで、TransposedGrid の動作を以下のように変更します:

  • ユーザーが通常の方法で TransposedGrid を介してデータを編集できるようにします(アイテム値の変更)。
  • TransposedGrid がユーザーの編集に応じて基になるデータ配列を変更するのを防ぎます。その代わりに、dataChanged イベントをトリガーします。このイベントを使用して、Redux ストアへのデータ変更アクションをディスパッチすることができます。