2016-06-17 3 views
1

저는 리팩토 프로젝트를 진행하고 있으며 작업과 상점을 처리하기 위해 Alt 라이브러리를 사용하고 있습니다. setTimeout()을 사용하거나 Flux 패러다임을 해킹하지 않고 두 작업을 연결하는 것이 가능한지에 대한 대답을 찾을 수 없습니다.플럭스 (alt)에서 작업을 올바르게 연결하는 방법

내 이해는 React 구성 요소에서 이벤트가 발생하고 있으며,이 동작은 Stores로 연결되는 Action을 트리거합니다. 상점은 새로운 상점을 시작하거나 다른 상점에서 데이터를 수정할 수 없습니다. 그러나 때로 우리는 일련의 행동을 여러 차례 연결해야합니다. 두 가지 동작을 생성 할 수 있습니까? 한 동작이 완료되면 다른 동작을 청취 할 수 있습니까?

예를 들어보십시오. 한 무리의 사람들이 차 옆에 서 있습니다. 이벤트가 차에 들어가 운전을 시작하라는 메시지가 표시됩니다. 플럭스 (Flux)의 세계에서, 그것은 "Get in"과 "Go"의 두 가지 행동으로 볼 수 있습니다. 각 사람 ("상점"이라고 생각하는)은 독립적이며 앉아있는 데 시간이 많이 걸릴 수 있습니다. 운전자는 다음 행동 (진행)을하기 전에 모든 사람이 앉아 있는지 확인해야합니다. 그리고 "이동"은 운전자에게 국한 될 수있는 것이 아니며, 다른 승객에게 멀미와 같은 영향을 줄 수 있습니다.

Flux (Alt)에서 어떻게 구현할 수 있습니까?

답변

0

실제로 액션은 여러 액션을 트리거 할 수 있습니다. Observable & Promise는 여러 액션 디스패치를 ​​연결하는 데 매우 유용합니다. 관찰 할 수있게하려고한다면, RxJS을보십시오. 약속을 위해 나는 blue bird

을 사용했습니다. Redux를 사용하는 경우 실제로 setTimeout의 대안을 제공하는 Redux-thunk을 살펴보십시오.

0

어쩌면 action.defer이 필요합니다.

CarActions.getIn(driver,passengers) 
CarActions.go.defer(driver) 
관련 문제