2017-09-06 12 views
0

コンテナのサブ状態のみを型検査する方法はありますか?typescriptとreduxを使用してmapStateToPropsで状態をチェックしています

これは、私は今それをやっている方法です:

const mapStateToProps = (state: rootStateType) => (state.subState); 

私は型チェックのために私のrootReducerとすべてのコンテナ間の依存関係を作成しないようにしたいと思います。私は、各コンテナがそれ自身のサブステートにのみ関心があり、それを型チェックするのは意味があると思います。

代わりに次のことをする考えがありましたが、私の理解によれば、破壊されたオブジェクトは型チェックされませんが、破壊が起こる前に型チェックが行われます。

const mapStateToProps = ({subState}: subStateType) => (subState); 

どのコンベンションが本当にわかりません。各コンテナの状態全体を型チェックするほうが簡単かもしれません。

答えて

2

reduxアプリケーションでは、状態からスライスまたは状態から計算された値を返す関数をセレクタを使用してコンポーネントから状態を切り離すことが一般的です。あなたのケースでは

、あなたが

const getSubState = (state): subStateType => state.subState; 

のようなセレクタを持っていたなら、あなたはmapStateToPropsでそれを使用することができ、および状態のスライスは、それに応じて入力されたことになります。これらのセレクタは、リデューサと同じモジュールに保持し、コンポーネントにインポートすることができます。

const mapStateToProps = state => getSubState(state); 
関連する問題