You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React移动端更新Ref时touchmove事件停止触发问题排查

React移动端日程组件touchmove事件异常问题

我正在开发一款React日程组件,在真实移动端设备上测试时发现:向上拖动时间块时touchmove事件会突然停止触发,但桌面端逻辑完全相同却正常运行。

经过定位,只要存在以下两行代码中的任意一行,事件就会停止触发,直到再次触摸屏幕才恢复;若两行都注释,touchmove事件则能正常触发:

// 此行导致问题
delete timeBlocksRef.current[dayIndex]?.[hourIndex];

timeBlocksRef.current[dayIndex][startingHourStep] = value;

// 此行也会导致问题
activeTimeBlockIdRef.current = `${dayIndex}-${startingHourStep}`;

我已确认问题发生时,事件监听器并未被移除或添加。这两行修改Ref的代码看起来不应该干扰事件触发机制,且仅移动端出现此问题的情况更令人困惑,请问该行为的原因是什么?


内容的提问来源于stack exchange,提问作者Iván Hidalgo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 22:45:00