2017-01-31 4 views
0

이벤트 기반의 react/redux 어플리케이션에 기능을 추가해야합니다.React Redux에있는 Stateless Event Listener

나는 redux를 사용하고 있으며, 조치를 통해 이벤트에 대한 내 애플리케이션 상태를 변경하는 축소 기가 있습니다. 예를 들어 (USER_CLICKED_BUTTON, AJAX_CALL_STARTED, AJAX_CALL_ERROR, AJAX_CALL_SUCCESS)

이러한 이벤트에 리스너를 추가하고 상태와 관련이없는 작업, 구체적으로 분석과 같은 다른 API를 호출하고 싶습니다.

는 의미가 단순히 이러한 행동과 행위에 수신하는, 아니 실제 상태와 또 다른 "감속기"를 추가 할 수 있습니까이 같은

뭔가 (예를 호출 조지아에 대한 (...)?) :

var Actions = require ('../actions/actionTypes'); 

var gaReducer = function(state, action) { 
    switch (action.type){ 
     case Actions.USER_CLICKED_BUTTON: 
       ga('send', 'event', 'user-clicked-button'); 
       break; 
    } 

    return state; 

} 

답변

1

미들웨어의 경우처럼 들릴 수 있습니다. 예를 들어 https://github.com/evgenyrodionov/redux-logger을 확인하십시오. https://github.com/ezekielchentnik/ :

const middleware = [ 
    myAnalyticsMiddleware() 
]; 

export default createStore(reducer, applyMiddleware(...middleware)); 
+0

좋아,이 올바른 방향으로 날 보내, 이것은 더 내가 무엇을 찾고처럼 아마도 :

그리고 상점 같은 것을 보일 수 있습니다 redux - 리포터. – NiRR

+0

또한이 예제가 내 문제에 어떻게 적용되는지 알지 못합니다. – NiRR

+0

이 예제는 저장소에 연결되어 저장소가 변경 될 때 무언가 (이 경우 로깅, 경우에 따라 분석을 보낼 것임)를 수행하기 때문에 적용됩니다. – meleyal