12

もう 1 つの質問方法は、localStorage に保存されたデータのみを使用してアプリを起動し (再水和)、すべての redux 状態の変更を localStorage に保存する (永続化する) 場合は、次のような独自のソリューションを使用するよりもredux-persistを使用することです。ダン・アブラモフはここで説明しますか?

redux-persist には他にも多くの機能が付属していることは理解しており、私自身は redux-persist-crosstab を使用できるようにするため (異なるタブで実行されているアプリ間の変更に対処できるようにするため) に使用し始めましたが、最も基本的なシナリオで使用するのはやり過ぎです。persist/REHYDRATE特に、理解するのが難しく、ランダムに呼び出すなど、面白いことをすることがあります。

ここで明らかな何かが欠けていますか?

4

1 に答える 1

27

の使用法はredux-persist、アプリケーションのユース ケースによって異なります。

まず、主な機能のいくつかを強調しましょう。redux-persist

  • コンポーネントを表示するための使用方法に合わせて、状態が一致するまで自動的に遅延を提供するPersistGateの使用。rendering of the componentspersistedloading

  • persistStore、 、persistReducerなどの複数のタイプに基づいて永続化するカスタム関数 persistObject

  • AutoMergingとレベルにinitialStates基づくさまざまな状態のshallowdeep

  • のおそらく最も重要な機能はblacklistingwhitelistingreducers

  • shallowレベルpersistencedeepレベルのネストされた持続性persistence

  • migrationsのさまざまなバージョンを保存するために永続化しredux-storeます。

  • immutablecompressionencryptfilterなどをサポートするための変換。

applicationあなたが構築するのはdevelopment目的のためだけであると考えると、アプリケーションに何が必要かを知っていることを考えると、多くておそらくレデューサーPersistGatepersistStore必要になります。blacklistwhitelist

レベルが高く、スケーリングしやすいアプリケーションの場合production、少なくとも5 / 7上に挙げた機能が必要になります。このモジュールがなければ、圧縮暗号化などのためのモジュールをインストールする必要があるかもしれません。その状態の とともに、 と のさまざまなバージョンを適切に保存する方法と、要件に適合するものredux-storeを見つけるretrieve必要があります。displayrehydrationredux-store

これにはさらに多くの意味があり、後で遭遇します。したがって、プロジェクトの要件に基づいて、このパッケージを使用して管理することは有益だと思います。redux-store storage

于 2018-03-26T11:46:54.930 に答える