gpt4 book ai didi

javascript - 传递一个函数作为稍后执行的参数

转载 作者:行者123 更新时间:2023-12-03 02:59:09 25 4
gpt4 key购买 nike

我想传递这个函数:

const upgradeAction = () => (
(dispatch) => {
closeModal('modal')
dispatch(showUserInfo())
}
)

这里作为参数:

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

单击按钮时调用 checkComplete。但是现在,当单击该按钮时,没有任何效果。我尝试在upgradeAction 上使用return,但没有任何效果,并且checkComplete 也没有执行任何操作。我做错了什么?!

最佳答案

您正在使用 redux 中间件(可能是 redux-thunk )来处理函数操作。当函数被调度时,中间件会检测该函数,并使用 dispatchsetState 调用它。

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

const upgradeAction = (dispatch) => () => {
closeModal('modal')
dispatch(showUserInfo())
};

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

关于javascript - 传递一个函数作为稍后执行的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47488816/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com