调试器语句在API调用中不起作用

时间:2019-02-27 05:37:26

标签: arrays react-native odata redux-saga react-native-debugger

我有一个项目数组,我对数组中的每个项目进行API调用。我正在使用反应 用于调试(https://github.com/jhen0409/react-native-debugger)的本机调试器,问题是当我在函数中放置debugger语句时 在我进行API调用(即callAPI函数)的地方,调试器不会在那里停止,但是我得到了结果 如预期般,在API调用之后。

但是当我在yield调用([])中删除'[]'符号时;调试器停止在 callAPI函数。以下是我所面对的语法。

const callAPI = async ( client: ServiceRootClient, move: moveReq): Promise<any> => {

        debugger;

        const results = await client

            .forOne(singletons => singletons.find(singleton => 

             singleton.$Name === "Item"))

            .forOperation(ops => ops.find(op => op.$Name === "Move"))

            .withParameters((params, parameterSet) => {

                params.map(param => {

                    if (param.$Name === "Data") {

                        parameterSet.add(param, movement);

                    }

                });

            })

            .execute();

    return results;
};



 export function* applyItemMovements(action: itemManagement.Action) {

  try {

    const result = yield all([

                ItemMoveRequests.map(ItemMoveRequest=>

                    callAPI, action.metadata.client, moveReq

                )

            ]);

      } catch(error) {

            //print error

      }

}

我在内部使用'[]'yield all来对所有数组项进行API调用,因此如果一个API调用 失败,不会停止调用API的数组中的其他项。

我不确定这是否 是进行API调用的方法,即使数组中的一项失败或我应该对收益进行任何修改,其余项目也可以调用API。如何使调试器语句停止 在callAPI函数中。

0 个答案:

没有答案