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
相关产品推荐
相关产品推荐

