2017-10-30 7 views
0

私は反応することに新しいです& reduxとデコレータの実装に出くわし、どのように私の要件に応じて成形する方法を考え出しました。接続の使用中にデコレータを使用しない方法は?

@connect(
    state => ({ 
     authentication: state.authentication 
    }), 
    dispatch => bindActionCreators(LoginActions, dispatch) 
) 

と私は変換する必要がありするためのフォームされています:

const mapStateToProps = state => { 
    return { 
    authentication: state.authentication 
    }; 
}; 

const mapDispatchToProps = dispatch => { 
    return { 
    authenticateUser: (email, password) => dispatch(loginUser(email, password)) 
    }; 
}; 
export default connect(mapStateToProps, mapDispatchToProps)(LoginContainer); 

答えて

2

以下です。あなたはそれを簡単にするために "脂肪矢印"機能を使用することもできます

function mapStateToProps(state, prop){ 
    return { 
     authentication: state.authentication 
    } 
    } 

    function mapDispatchToProps(dispatch){ 
    return { 
     action: bindActionCreators(LoginActions, dispatch) 
    } 
    } 

export default connect(mapStateToProps, mapDispatchToProps)(LoginContainer); 
1

は、私は1つの、考える 後、私は非デコレータ形式に変換する必要があり、私は経由して来た構文は次のとおりであり、あなたの問題を解決する方法は、これはあなたのシンテックスの非デコレータ形式です(あなたがmapDispatchToPropsための短い表記を使用することができます)

export default connect(state => { 
    authentication: state.authentication 
}, { loginUser })(LoginContainer); 
関連する問題