在reducer中调用self回调

时间:2018-03-14 07:10:32

标签: reactjs react-native react-redux

我有以下减速器:

export const changeListener = () => (dispatch) => {
  changeListenerManager.update((res) => {
    changeListener();
    dispatch({ type: 'CHANGE', payload: res });
  });
};

应该在回调后立即调用changeListener();函数。但是,当响应从本机桥接回来时(桥接收回调函数,存储它,并且当发生更改时,它使用它来通知应用程序),该函数根本不被调用 - 并且没有错误。如果我试图从回调中调用该方法(在调试器中),我得到的信息是未定义的。我该如何解决这个问题?

2 个答案:

答案 0 :(得分:2)

'br_bank' => $get_bank->bank_name curried 函数,因此您需要传递第二个必需参数changeListener

示例:

dispatch

注意:当前逻辑似乎有一个无限循环。

答案 1 :(得分:0)

当你打电话给" body"中的changeListener时您的功能需要调用两次。一旦没有派遣,一次用:

export const changeListener = () => (dispatch) => {
  changeListenerManager.update((res) => {
    changeListener()(dispatch);  // <--- CHANGE
    dispatch({ type: 'CHANGE', payload: res });
  });
};

您正在使用更高阶的功能。