3

私は状態管理を扱うのが初めてです。現在、私は blazor アプリケーションに取り組んでおり、flux パターンを介して状態管理を可能にする「fluxor」フレームワークに出くわしました。Fluxor は私にとっては完璧に機能していますが、ページの State が実際にどこに保存されているのかわかりません。それはキャッシュ、データベース、またはその他の派手な方法ですか? その保存されたデータをブラウザで見る方法はありますか?

ちなみに、私はアプリケーションのクライアント側でフラクサーを使用しています。

助けてくれてありがとう!

4

2 に答える 2

1

AnIStoreは Scoped 依存関係としてインスタンス化されます。最終的に、これは現在のユーザーのすべてのルートです。

を注入するIStoreIState<Whatever> IDispatcherIActionSubscriberそれらは最終的にそのIStoreインスタンス内に格納されている状態から取得されます。

IStore を何かに注入すると、その Features プロパティを反復処理できます。これは、名前でIFeatureキー付けされた の辞書です (名前は fromIFeature.GetNameです)。

IFeature にはobject GetState()、状態を取得するために使用できるメソッドがあります。

これは、状態にアクセスする非一般的な方法です。状態は実際にはジェネリックを使用して格納されます。

ReduxDevTools コードを見ると、すべての状態を取得する (ReduxDevTools ブラウザー プラグインに送信する) 方法の例が表示されIStore.FeaturesますGetState

https://github.com/mrpmorris/Fluxor/blob/master/Source/Fluxor.Blazor.Web.ReduxDevTools/ReduxDevToolsMiddleware.cs#L67

メソッドでは、ブラウザプラグインから履歴状態を復元するOnJumpToState方法を示しています

https://github.com/mrpmorris/Fluxor/blob/master/Source/Fluxor.Blazor.Web.ReduxDevTools/ReduxDevToolsMiddleware.cs#L92

于 2021-05-07T15:51:57.753 に答える