2017-02-15 15 views
0

我有幾個動作,需要與另一個動作一起使用, 更具體的我有行動來處理doument和一個行動來保存它,我不會去重複保存文件的調用,所以我試圖在mapDispatchToPropsthunk上創建自己的包裝。Redux - 在mapDispatchToProps中換行動另一個動作

我需要我通過對thunk行動執行的方法的每個動作 -

function changeAction() { 
    return: { 
    type: types.CHANGE 
    } 
} 

function change() { 
    return(dispatch, getState) => { 
     dispatch(changeAction()) 
     saveDocument(getState()); 
    } 
} 

我試圖創建的方法來操作映射到咚

export function mapUpdatePresentationsToProps(actions) { 
    const mappedActions = {}; 

    Object.keys(actions).map(action => { 
     mappedActions[action] = function() { 
      return (dispatch, getState) => { 
      dispatch(action) 
      dispatch(updatePresentation(getState())) 
      } 
     } 
    }) 

    return mappedActions; 
} 

而且我總是收到錯誤'操作必須是普通對象。使用自定義中間件進行異步操作。'難道我做錯了什麼?我不知道我可以如何調試它們。將不勝感激任何幫助。

回答

1

我想你需要改變:

dispatch(action) 

喜歡的東西:

dispatch(actions[action]()) 

現在看來,你試圖派遣一個字符串

+0

啊,THX的快速答覆。對我感到羞恥^^ –

相關問題