Reactjs redux在这里是如何工作的,我正在浏览一个代码库,不了解另一个函数下的函数是如何显示的

Reactjs redux在这里是如何工作的,我正在浏览一个代码库,不了解另一个函数下的函数是如何显示的,reactjs,redux,Reactjs,Redux,正如您在我的代码中所看到的,当我调用函数delete card时,它会返回dispatch函数,那么在这种情况下,如何调用或使用删除卡,请提前感谢 export function deleteCard(data, callback) { return dispatch => { dispatch({type: DELETE_PAYMENT_CARD_REQUEST}) return removeCard(data).then(res =>

正如您在我的代码中所看到的,当我调用函数delete card时,它会返回dispatch函数,那么在这种情况下,如何调用或使用删除卡,请提前感谢

 export function deleteCard(data, callback) {
      return dispatch => {
        dispatch({type: DELETE_PAYMENT_CARD_REQUEST})
        return removeCard(data).then(res => {
          console.log("Remove card success.........", res);
          dispatch({type: DELETE_PAYMENT_CARD_SUCCESS, payload: res})
          if (callback) {
            callback({status: true, data: res})
          }
        }).catch(err => {
          dispatch({type: DELETE_PAYMENT_CARD_FAILURE, payload: err})
          if (callback) {
            callback({status: false, data: err})
          }
        });
      };
    }

这并不复杂。您需要制作如下内容:

从“存储”导入存储;
//这里我们得到了这个嵌套函数,以后可以使用它。
//让我们用支付卡数据和回调函数初始化它。
const deleteCardResolver=deleteCard(
{/*…您的支付卡数据…*/},
(结果)=>{
//这是在成功或失败发生时调用的回调函数。
//您可以对结果对象执行某些操作。它有“status”和“data”字段,如所述
}
);
//然后您必须从某处获取分派函数并将其传递给deleteCardResolver。
//在本例中,我们将使用store对象中的dispatcher。
//但是,例如,如果React组件中发生了所有事情,您也可以使用'this.props.dispatch'。
deleteCardResolver(存储、发送);

没有那么复杂。您需要制作如下内容:

从“存储”导入存储;
//这里我们得到了这个嵌套函数,以后可以使用它。
//让我们用支付卡数据和回调函数初始化它。
const deleteCardResolver=deleteCard(
{/*…您的支付卡数据…*/},
(结果)=>{
//这是在成功或失败发生时调用的回调函数。
//您可以对结果对象执行某些操作。它有“status”和“data”字段,如所述
}
);
//然后您必须从某处获取分派函数并将其传递给deleteCardResolver。
//在本例中,我们将使用store对象中的dispatcher。
//但是,例如,如果React组件中发生了所有事情,您也可以使用'this.props.dispatch'。
deleteCardResolver(存储、发送);

感谢您的回复andrey我没有收到我编写的代码,因为我正在返回一个dispatch in函数,并在该dispatch内编写了另一个函数,那么另一个dispatcher如何在不调用它的情况下返回,(1)
deleteCard()
返回函数,(2)然后将
dispatch
传递给该函数(3)然后返回问题中显示的
Promise
。但是如果我做对了,您根本不需要使用
Promise
对象,因为成功或失败可以在您传入的回调中处理(1)。回调还接收一个包含字段(1)
status
,即
true
false
,以及(2)
payload
这显然是API响应。感谢回复andrey,我没有收到我编写的代码,因为我在函数中返回了一个分派,并在分派中编写了另一个函数。那么,另一个分派器如何返回而不调用它呢?(1)
deleteCard()
返回函数,(2)然后将
dispatch
传递给该函数(3),然后它返回问题中显示的
Promise
。但是如果我做对了,您根本不需要使用
Promise
对象,因为成功或失败可以在您传入的回调中处理(1)。回调还接收一个包含字段(1)
status
,即
true
false
,以及(2)
payload
,这显然是API响应。