当一个API调用发生时,我不能点击屏幕上的任何可触摸对象。它们不会响应,直到API调用完成。有什么解决办法吗?我尝试了许多React原生组件,如TouchableOpacity、TouchableHighlight、Pressable,但主要问题是当API调用正在进行时,onPress本身不会触发。
w8rqjzmb1#
你能打开开发工具,设置show perf monitor并检查JS FPS吗?异步函数在后台运行时通常不会阻止触摸对象,无论你使用async/await还是.then。根据您提供的信息,您的JS线程似乎冻结了,这意味着有许多进程在后台运行。你能分享一下你正在运行的代码吗?
show perf monitor
async/await
.then
dkqlctbz2#
进行API调用时,您必须使用async/await或.then。如果您不使用这些,您的应用将停止工作,直到api调用完成或promise解析。
async
await
2条答案
按热度按时间w8rqjzmb1#
你能打开开发工具,设置
show perf monitor
并检查JS FPS吗?异步函数在后台运行时通常不会阻止触摸对象,无论你使用
async/await
还是.then
。根据您提供的信息,您的JS线程似乎冻结了,这意味着有许多进程在后台运行。
你能分享一下你正在运行的代码吗?
dkqlctbz2#
进行API调用时,您必须使用
async
/await
或.then
。如果您不使用这些,您的应用将停止工作,直到api调用完成或promise解析。