我有一组用于 api 调用的代码。我需要根据 api 调用响应停止每个循环。 期望的结果:每个循环在 resolve 返回 false 后停止; 当前结果:错误,函数返回永远不会解决的承诺;
cy.wrap(array).each(function(code, index, arr) {
return new Cypress.Promise((resolve) => {
cy.intercept('GET', ApiUrl + code).as(`searchApi${code}`);
cy.get('input').type(code); // Sends the api request
cy.wait(`@searchApi${code}`).then(({ request, response }) => {
resolve(response.body.IsAcceptedForCollection);
});
}).finally(result => {
return result; // Result should be bool, false should stop each loop
});
});
在停止循环或继续下一次迭代之前,我想等待每次迭代如何在 wait 命令中解决。