Javascript 将函数作为参数传递给以后执行

Javascript 将函数作为参数传递给以后执行,javascript,ecmascript-6,Javascript,Ecmascript 6,我要传递此函数: const upgradeAction = () => ( (dispatch) => { closeModal('modal') dispatch(showUserInfo()) } ) 作为此处的参数: export const checkComplete = () => ( (dispatch, getState) => { dispatch(openModal('modalname', { but

我要传递此函数:

const upgradeAction = () => (
  (dispatch) => {
    closeModal('modal')
    dispatch(showUserInfo())
  }
)
作为此处的参数:

export const checkComplete = () => (
  (dispatch, getState) => {
    dispatch(openModal('modalname', {
      buttonAction: upgradeAction,
    }))
  }
)

单击按钮时调用checkComplete。但是,现在单击按钮时,一切都不起作用。我尝试使用升级时返回操作,但没有任何效果,checkComplete也没有任何效果。我做错了什么

您正在使用redux中间件来处理函数操作。当函数被分派时,中间件检测该函数,并使用dispatch和setState调用它

当模态执行buttonAction时,它不会分派它。您需要手动提供分派,当按钮调用操作时,它将被分派

const upgradeAction=调度=>=>{ 关闭模态“模态” dispatchshowUserInfo }; export const checkComplete==>dispatch,getState=>{ DispatchOpenModel'modalname'{ 按钮操作:upgradeActiondispatch, }
}如何将checkComplete附加到单击侦听器?你真是个天才,就是这样,谢谢你解释我使用的redux thunk,这就是问题所在。