2017-09-30 1 views
-2

, react-redux에서 connect을 사용하는 경우 :왜 연결 순서가 중요합니까? <code>mapDispatchToProps</code><code>mapStateToProps</code> 전에이 구성 요소가 <code>dispatch is not a function</code>을 알리는 렌더링하지 않는 경우

function mapDispatchToProps(dispatch) { 
    return { 
    getData:() => { 
     dispatch(getSomething()) 
    } 
    } 
} 

function mapStateToProps(state) { 
    return { 
     somevalue: state.somevalue, 
    } 
} 

export default connect(mapStateToProps, mapDispatchToProps) (Comp); 

//export default connect(mapDispatchToProps, mapStateToProps) (Comp); THIS FAILS 

이유는 무엇입니까 mapStateToPropsmapDispatchToProps 문제에 대한 순서?

+0

올바른 기능이 중요한 이유는 무엇입니까? 오, 정말 좋은 하하. – WilomGfx

답변

2

react-redux documentation for connect에 명시된대로 4 개의 다른 매개 변수를 기다립니다.

매개 변수의 순서를 변경하면 함수가 잘못된 매개 변수로 실행되며 이로 인해 함수가 실패하게됩니다.

connect([mapStateToProps], [mapDispatchToProps], [mergeProps], [options]) 

는이 돌아 오는 점을 연결 컴포넌트 반응. connect는 connectAdvanced 주변의 외관으로 가장 일반적인 사례에 편리한 API를 제공합니다.

전달 된 구성 요소 클래스는 수정하지 않습니다. 대신 은 사용할 새로운 연결 구성 요소 클래스를 반환합니다.