首页 > 解决方案 > 在 for 循环中获取本地数据库数据时超出了最大调用堆栈大小

问题描述

我在 for 循环中使用 awiat 2 次从本地数据库中获取数据。显然它工作正常,但是当我打开和关闭屏幕/组件 4-5 次时。它向我显示了错误。“超过最大调用堆栈大小”

我已经尝试了许多解决方案,例如处理它的承诺,但它仍然给我这个错误。

代码: for (let i = 0; i < val.length; i++) { console.log('batchno', val[i].batchno); 让结果 = 等待 item.GetPendingCountwithbatchno(val[i].batchno); //来自 sqllite let result2 = await item.GetCalledphoneNumberCountswithbatchno( val[i].batchno, ); // 来自 sql lite

  let pending = result.rows.item(0).Cnt;
  let called = result2.rows.item(0).Cnt;
  val[i].pending = pending;
  val[i].called = called;
}
console.log('val:', val);
console.log('lastindex:', lastindex);
//return val;
if (val[lastindex].pending != undefined) setbatchlist([...val]);

};

标签: reactjsreact-nativecallstackstack-size

解决方案


推荐阅读