2016-06-08 3 views
2

, 나는 특별한 사용 사례로 실행 한 . 현재 저는 그것들을 상점 상태에 두었고 잘 작동합니다. 그러나 Redux 상태로 기능을 배치하는 것은 안티 패턴의 일종으로 스토어의 내용을 유지하고 재수 화하는 기능을 손상시킵니다.기능은 내 반응-REDUX 응용 프로그램 개발시

그래서 저장소 상태에서 함수를 이동하려고합니다. 함수를 저장하고 해당 키를 상태에 저장하기 위해지도를 사용합니다. 질문은, 그렇게함으로써, 나의 국가 대 UI 변환은 더 이상 순수한 기능을 유지하지 않는다는 것입니다. 함수가 동적으로로드되면 함수 맵의 내용이 변경됩니다. 다른 기간 (예 :로드 된 VS 함수로드 기능)에서 동일한 상점 상태는 다른 UI를 초래합니다.

이제는 redux 시스템에서 일부 위치에 함수를 넣는 것이 그렇게 잘못되었다고 생각합니다. 이러한 기능을 넣을 위치에 대한 조언이 필요합니다.

답변

0

언급 한 이유 때문에 Redux 상태의 함수 저장이 좋은 아이디어가 아닐 수 있습니다. 함수의 Redux 상태로드 상태를 저장할 수 있습니다. 뭔가 같은 :

{ 
    'loadedFunctions': ['func1', 'func2'] 
} 

또는 뭔가 더 복잡 : (당신의 기능의 몸이 변경되지 않는 경우) 같은 돌아 오는 상태가 답장을 보내

+0

감사를 동일한 UI를 초래한다이 경우

{ 'functionsStatus': { 'func1': { loaded: false, loading: true } } } 

! 그래서 나는 다른 곳에서 함수를 저장하고'func1','func2'와 같은 키로 구성해야합니까? 즉, 컴포넌트에서 사용하고 싶을 때, 상태에서 키 (예 :'func1')를 가져와 "다른 곳"에서 실제 함수를 찾아야합니다. – nighca

+0

그런 다음이 함수가로드 된 상태가 아닌지 확인하십시오. 그렇지 않으면 디스플레이 로더 또는 원하는 것을 선택하십시오. 이 경우 redux 상태와 렌더링 된 ui 사이에 더 순수한 관계가 생깁니다. – trashgenerator

+0

그러나 실제 응용 프로그램은 할 일 목록보다 복잡 할 수 있으며 모든 곳에서 순결을 유지하는 것이 최상의 결정이 아닐 수 있음을 명심하십시오. – trashgenerator

관련 문제